From 0635784333f3a186f5a66f509e8f6d30e5d4dce2 Mon Sep 17 00:00:00 2001 From: Blatzar <46196380+Blatzar@users.noreply.github.com> Date: Fri, 19 Aug 2022 18:17:37 +0200 Subject: [PATCH] Fix bug with persisting tvTypes closes #27 --- .../ui/settings/extensions/PluginsFragment.kt | 14 +++++++++----- app/src/main/res/menu/repository.xml | 2 +- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/settings/extensions/PluginsFragment.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/settings/extensions/PluginsFragment.kt index 7f008361..27a43d4d 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/settings/extensions/PluginsFragment.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/settings/extensions/PluginsFragment.kt @@ -1,8 +1,8 @@ package com.lagradost.cloudstream3.ui.settings.extensions -import android.content.Context import android.os.Bundle import android.view.* +import android.widget.SearchView import androidx.core.view.isVisible import androidx.fragment.app.Fragment import androidx.fragment.app.activityViewModels @@ -30,6 +30,10 @@ class PluginsFragment : Fragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + // Since the ViewModel is getting reused the tvTypes must be cleared between uses + pluginViewModel.tvTypes.clear() + pluginViewModel.search(null) + val name = arguments?.getString(PLUGINS_BUNDLE_NAME) val url = arguments?.getString(PLUGINS_BUNDLE_URL) val isLocal = arguments?.getBoolean(PLUGINS_BUNDLE_LOCAL) == true @@ -52,7 +56,7 @@ class PluginsFragment : Fragment() { } val searchView = - settings_toolbar?.menu?.findItem(R.id.search_button)?.actionView as? RepoSearchView + settings_toolbar?.menu?.findItem(R.id.search_button)?.actionView as? SearchView // Don't go back if active query settings_toolbar?.setNavigationOnClickListener { @@ -72,7 +76,7 @@ class PluginsFragment : Fragment() { if (!hasFocus) pluginViewModel.search(null) } - searchView?.setOnQueryTextListener(object : android.widget.SearchView.OnQueryTextListener { + searchView?.setOnQueryTextListener(object : SearchView.OnQueryTextListener { override fun onQueryTextSubmit(query: String?): Boolean { pluginViewModel.search(query) return true @@ -166,13 +170,13 @@ class PluginsFragment : Fragment() { } } - class RepoSearchView(context: Context) : android.widget.SearchView(context) { +// class RepoSearchView(context: Context) : android.widget.SearchView(context) { // var onActionViewCollapsed = {} // // override fun onActionViewCollapsed() { // onActionViewCollapsed() // } - } +// } } } \ No newline at end of file diff --git a/app/src/main/res/menu/repository.xml b/app/src/main/res/menu/repository.xml index 5f4555d7..4e192291 100644 --- a/app/src/main/res/menu/repository.xml +++ b/app/src/main/res/menu/repository.xml @@ -5,7 +5,7 @@ android:id="@+id/search_button" android:icon="@drawable/search_icon" android:title="@string/title_search" - app:actionViewClass="com.lagradost.cloudstream3.ui.settings.extensions.PluginsFragment$Companion$RepoSearchView" + app:actionViewClass="android.widget.SearchView" app:searchHintIcon="@drawable/search_icon" app:showAsAction="ifRoom" />