diff --git a/Habitica/res/drawable/search_background.xml b/Habitica/res/drawable/search_background.xml index 057473816..e04dd2862 100644 --- a/Habitica/res/drawable/search_background.xml +++ b/Habitica/res/drawable/search_background.xml @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/equipment/EquipmentDetailFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/equipment/EquipmentDetailFragment.kt index e516994ed..bf881e7e5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/equipment/EquipmentDetailFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/inventory/equipment/EquipmentDetailFragment.kt @@ -135,7 +135,17 @@ class EquipmentDetailFragment : if (query.isNullOrBlank()) { return@combine equipment } - equipment.filter { it.text.contains(query, true) || it.notes.contains(query, true) } + val tokens = query.split(" ") + val tokenCount = tokens.size + equipment.filter { + var matchCount = 0 + for (token in tokens) { + if (it.text.contains(token, true) || it.notes.contains(token, true)) { + matchCount += 1 + } + } + return@filter matchCount == tokenCount + } } .map { it.sortedBy { equipment -> equipment.text } } .collect { adapter.data = it }