From 47f1daf6bdde0656572e195989e194dab27a3f54 Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Mon, 7 Jan 2019 15:23:12 +0100 Subject: [PATCH] fix public guild searching --- .../ui/adapter/social/PublicGuildsRecyclerViewAdapter.kt | 9 ++++++++- .../habitica/ui/fragments/social/PublicGuildsFragment.kt | 2 +- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/PublicGuildsRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/PublicGuildsRecyclerViewAdapter.kt index 0cd8babd7..10b8949ea 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/PublicGuildsRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/PublicGuildsRecyclerViewAdapter.kt @@ -81,6 +81,13 @@ class PublicGuildsRecyclerViewAdapter(data: OrderedRealmCollection?, auto return this.memberGuildIDs.contains(guild.id) } + private var unfilteredData: OrderedRealmCollection? = null + + fun setUnfilteredData(data: OrderedRealmCollection?) { + updateData(data) + unfilteredData = data + } + override fun getFilter(): Filter { return object : Filter() { override fun performFiltering(constraint: CharSequence): Filter.FilterResults { @@ -90,7 +97,7 @@ class PublicGuildsRecyclerViewAdapter(data: OrderedRealmCollection?, auto } override fun publishResults(constraint: CharSequence, results: Filter.FilterResults) { - data.notNull { + unfilteredData.notNull { if (constraint.isNotEmpty()) { updateData(it.where() .contains("name", constraint.toString(), Case.INSENSITIVE) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/PublicGuildsFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/PublicGuildsFragment.kt index 108023e5a..4dbedcab5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/PublicGuildsFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/PublicGuildsFragment.kt @@ -66,7 +66,7 @@ class PublicGuildsFragment : BaseMainFragment(), SearchView.OnQueryTextListener compositeSubscription.add(this.socialRepository.getPublicGuilds() .firstElement() .subscribe(Consumer { groups -> - this@PublicGuildsFragment.viewAdapter.updateData(groups) + this@PublicGuildsFragment.viewAdapter.setUnfilteredData(groups) }, RxErrorHandler.handleEmptyError())) compositeSubscription.add(this.socialRepository.retrieveGroups("publicGuilds").subscribe(Consumer { }, RxErrorHandler.handleEmptyError())) }