From a9d8ca24c37225b4aae1acd6ff0c186d8478cf4e Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Thu, 16 Jul 2020 10:34:43 +0200 Subject: [PATCH] Allow users to unequip some equipment from customization screen --- .../ui/adapter/CustomizationEquipmentRecyclerViewAdapter.kt | 4 +++- .../inventory/customization/AvatarEquipmentFragment.kt | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationEquipmentRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationEquipmentRecyclerViewAdapter.kt index 68f6edf29..442c8fd26 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationEquipmentRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationEquipmentRecyclerViewAdapter.kt @@ -65,6 +65,8 @@ class CustomizationEquipmentRecyclerViewAdapter : androidx.recyclerview.widget.R fun setEquipment(newEquipmentList: List) { this.equipmentList = newEquipmentList.toMutableList() + val emptyEquipment = Equipment() + equipmentList.add(0, emptyEquipment) this.notifyDataSetChanged() } @@ -104,7 +106,7 @@ class CustomizationEquipmentRecyclerViewAdapter : androidx.recyclerview.widget.R } } - if (activeEquipment == equipment.key) { + if (activeEquipment == equipment.key || (activeEquipment?.contains("base_0") == true && equipment.key?.isNotBlank() != true)) { binding.wrapper.background = itemView.context.getDrawable(R.drawable.layout_rounded_bg_gray_700_brand_border) } else { binding.wrapper.background = itemView.context.getDrawable(R.drawable.layout_rounded_bg_gray_700) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarEquipmentFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarEquipmentFragment.kt index 2e55d5d05..c67412958 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarEquipmentFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/customization/AvatarEquipmentFragment.kt @@ -40,7 +40,8 @@ class AvatarEquipmentFragment : BaseMainFragment() { compositeSubscription.add(adapter.getSelectCustomizationEvents() .flatMap { equipment -> - inventoryRepository.equip(user, if (user?.preferences?.costume == true) "costume" else "equipped", equipment.key ?: "") + val key = (if (equipment.key?.isNotBlank() != true) activeEquipment else equipment.key) ?: "" + inventoryRepository.equip(user, if (user?.preferences?.costume == true) "costume" else "equipped", key) } .subscribe(Consumer { }, RxErrorHandler.handleEmptyError())) compositeSubscription.add(adapter.getUnlockCustomizationEvents()