From 978e8d6ee28e2eadc1f1957a54b9431a59cc96de Mon Sep 17 00:00:00 2001 From: Severiano Jaramillo Date: Mon, 28 Jan 2019 19:48:11 -0600 Subject: [PATCH] Improve responsivenes of suggestions in MerchantsFragment's SearchView by reducing the debounce effect and clearing the query results if the query is shorter than 2 chars. --- .../bitsybitshareswallet/fragments/MerchantsFragment.kt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/cy/agorise/bitsybitshareswallet/fragments/MerchantsFragment.kt b/app/src/main/java/cy/agorise/bitsybitshareswallet/fragments/MerchantsFragment.kt index 404a1ee..4d95d00 100644 --- a/app/src/main/java/cy/agorise/bitsybitshareswallet/fragments/MerchantsFragment.kt +++ b/app/src/main/java/cy/agorise/bitsybitshareswallet/fragments/MerchantsFragment.kt @@ -166,11 +166,14 @@ class MerchantsFragment : Fragment(), OnMapReadyCallback, SearchView.OnSuggestio // Add listener to changes in the SearchView's text to update the suggestions mSearchView?.queryTextChangeEvents() ?.skipInitialValue() - ?.debounce(500, TimeUnit.MILLISECONDS) + ?.debounce(200, TimeUnit.MILLISECONDS) ?.map { it.queryText.toString().toLowerCase() } ?.observeOn(AndroidSchedulers.mainThread()) ?.subscribe { - updateSearchViewSuggestions(it) + if (it.length < 2) + mSearchView?.suggestionsAdapter?.changeCursor(null) + else + updateSearchViewSuggestions(it) }?.let { mDisposables.add(it) }