diff --git a/src/main/kotlin/com/looker/droidify/ui/fragments/ExploreFragment.kt b/src/main/kotlin/com/looker/droidify/ui/fragments/ExploreFragment.kt index f817dab7..b38da044 100644 --- a/src/main/kotlin/com/looker/droidify/ui/fragments/ExploreFragment.kt +++ b/src/main/kotlin/com/looker/droidify/ui/fragments/ExploreFragment.kt @@ -107,12 +107,15 @@ class ExploreFragment : MainNavFragmentX() { val searchView = mainActivityX.toolbar.menu.findItem(R.id.toolbar_search).actionView as FocusSearchView searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { - override fun onQueryTextSubmit(query: String?): Boolean { + override fun onQueryTextSubmit(query: String): Boolean { + if (isResumed && query != viewModel.searchQuery.value) + viewModel.setSearchQuery(query) return true } - override fun onQueryTextChange(newText: String?): Boolean { - if (isResumed) viewModel.setSearchQuery(newText.orEmpty()) + override fun onQueryTextChange(newText: String): Boolean { + if (isResumed && newText != viewModel.searchQuery.value) + viewModel.setSearchQuery(newText) return true } }) diff --git a/src/main/kotlin/com/looker/droidify/ui/fragments/InstalledFragment.kt b/src/main/kotlin/com/looker/droidify/ui/fragments/InstalledFragment.kt index 0e96cf08..5185415d 100644 --- a/src/main/kotlin/com/looker/droidify/ui/fragments/InstalledFragment.kt +++ b/src/main/kotlin/com/looker/droidify/ui/fragments/InstalledFragment.kt @@ -116,12 +116,15 @@ class InstalledFragment : MainNavFragmentX() { val searchView = mainActivityX.toolbar.menu.findItem(R.id.toolbar_search).actionView as FocusSearchView searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { - override fun onQueryTextSubmit(query: String?): Boolean { + override fun onQueryTextSubmit(query: String): Boolean { + if (isResumed && query != viewModel.searchQuery.value) + viewModel.setSearchQuery(query) return true } - override fun onQueryTextChange(newText: String?): Boolean { - if (isResumed) viewModel.setSearchQuery(newText.orEmpty()) + override fun onQueryTextChange(newText: String): Boolean { + if (isResumed && newText != viewModel.searchQuery.value) + viewModel.setSearchQuery(newText) return true } }) diff --git a/src/main/kotlin/com/looker/droidify/ui/fragments/LatestFragment.kt b/src/main/kotlin/com/looker/droidify/ui/fragments/LatestFragment.kt index a05d2c35..69dfd125 100644 --- a/src/main/kotlin/com/looker/droidify/ui/fragments/LatestFragment.kt +++ b/src/main/kotlin/com/looker/droidify/ui/fragments/LatestFragment.kt @@ -93,12 +93,15 @@ class LatestFragment : MainNavFragmentX() { val searchView = mainActivityX.toolbar.menu.findItem(R.id.toolbar_search).actionView as FocusSearchView searchView.setOnQueryTextListener(object : SearchView.OnQueryTextListener { - override fun onQueryTextSubmit(query: String?): Boolean { + override fun onQueryTextSubmit(query: String): Boolean { + if (isResumed && query != viewModel.searchQuery.value) + viewModel.setSearchQuery(query) return true } - override fun onQueryTextChange(newText: String?): Boolean { - if (isResumed) viewModel.setSearchQuery(newText.orEmpty()) + override fun onQueryTextChange(newText: String): Boolean { + if (isResumed && newText != viewModel.searchQuery.value) + viewModel.setSearchQuery(newText) return true } })