Эх сурвалжийг харах

- moved call to SettingsSearchHelper.initPreferenceSearchResultCollection() into SettingsSearchController

lmj0011 4 жил өмнө
parent
commit
29ab99aa1f

+ 0 - 4
app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseActivity.kt

@@ -10,8 +10,6 @@ import eu.kanade.tachiyomi.R
 import eu.kanade.tachiyomi.data.preference.PreferenceValues as Values
 import eu.kanade.tachiyomi.data.preference.PreferencesHelper
 import eu.kanade.tachiyomi.ui.security.SecureActivityDelegate
-import eu.kanade.tachiyomi.ui.setting.settingssearch.SettingsSearchHelper
-import eu.kanade.tachiyomi.util.lang.launchNow
 import eu.kanade.tachiyomi.util.system.LocaleHelper
 import uy.kohesive.injekt.injectLazy
 
@@ -78,8 +76,6 @@ abstract class BaseActivity<VB : ViewBinding> : AppCompatActivity() {
         super.onCreate(savedInstanceState)
 
         secureActivityDelegate.onCreate()
-
-        launchNow { SettingsSearchHelper.initPreferenceSearchResultCollection(this@BaseActivity) }
     }
 
     override fun onResume() {

+ 3 - 0
app/src/main/java/eu/kanade/tachiyomi/ui/setting/settingssearch/SettingsSearchController.kt

@@ -113,6 +113,9 @@ class SettingsSearchController :
         // Create recycler and set adapter.
         binding.recycler.layoutManager = LinearLayoutManager(view.context)
         binding.recycler.adapter = adapter
+
+        // load all search results
+        SettingsSearchHelper.initPreferenceSearchResultCollection(presenter.preferences.context)
     }
 
     override fun onDestroyView(view: View) {

+ 11 - 9
app/src/main/java/eu/kanade/tachiyomi/ui/setting/settingssearch/SettingsSearchHelper.kt

@@ -18,6 +18,7 @@ import eu.kanade.tachiyomi.ui.setting.SettingsParentalControlsController
 import eu.kanade.tachiyomi.ui.setting.SettingsReaderController
 import eu.kanade.tachiyomi.ui.setting.SettingsSecurityController
 import eu.kanade.tachiyomi.ui.setting.SettingsTrackingController
+import eu.kanade.tachiyomi.util.lang.launchNow
 import eu.kanade.tachiyomi.util.system.isLTR
 import kotlin.reflect.KClass
 import kotlin.reflect.full.createInstance
@@ -48,17 +49,18 @@ object SettingsSearchHelper {
     @SuppressLint("RestrictedApi")
     fun initPreferenceSearchResultCollection(context: Context) {
         val preferenceManager = PreferenceManager(context)
-
         prefSearchResultList.clear()
 
-        settingControllersList.forEach { kClass ->
-            val ctrl = kClass.createInstance()
-            val settingsPrefScreen = ctrl.setupPreferenceScreen(preferenceManager.createPreferenceScreen(context))
-            val prefCount = settingsPrefScreen.preferenceCount
-            for (i in 0 until prefCount) {
-                val rootPref = settingsPrefScreen.getPreference(i)
-                if (rootPref.title == null) continue // no title, not a preference. (note: only info notes appear to not have titles)
-                getSettingSearchResult(ctrl, rootPref, "${settingsPrefScreen.title}")
+        launchNow {
+            settingControllersList.forEach { kClass ->
+                val ctrl = kClass.createInstance()
+                val settingsPrefScreen = ctrl.setupPreferenceScreen(preferenceManager.createPreferenceScreen(context))
+                val prefCount = settingsPrefScreen.preferenceCount
+                for (i in 0 until prefCount) {
+                    val rootPref = settingsPrefScreen.getPreference(i)
+                    if (rootPref.title == null) continue // no title, not a preference. (note: only info notes appear to not have titles)
+                    getSettingSearchResult(ctrl, rootPref, "${settingsPrefScreen.title}")
+                }
             }
         }
     }