From 58a9f7b25a71b6538e2101503f50c643e87c80ec Mon Sep 17 00:00:00 2001 From: Koitharu Date: Thu, 2 Jan 2025 15:45:17 +0200 Subject: [PATCH] Fix settings menu (cherry picked from commit c51218240eccb8faca629021eed345d6e8aad9f0) --- .../org/koitharu/kotatsu/settings/RootSettingsFragment.kt | 7 +++++++ .../org/koitharu/kotatsu/settings/SettingsActivity.kt | 3 --- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/settings/RootSettingsFragment.kt b/app/src/main/kotlin/org/koitharu/kotatsu/settings/RootSettingsFragment.kt index 220c65bda..eef3efd0c 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/settings/RootSettingsFragment.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/settings/RootSettingsFragment.kt @@ -3,6 +3,7 @@ package org.koitharu.kotatsu.settings import android.os.Bundle import android.view.View import androidx.annotation.StringRes +import androidx.fragment.app.activityViewModels import androidx.fragment.app.viewModels import androidx.preference.Preference import dagger.hilt.android.AndroidEntryPoint @@ -10,12 +11,16 @@ import org.koitharu.kotatsu.BuildConfig import org.koitharu.kotatsu.R import org.koitharu.kotatsu.core.prefs.AppSettings import org.koitharu.kotatsu.core.ui.BasePreferenceFragment +import org.koitharu.kotatsu.core.util.ext.addMenuProvider import org.koitharu.kotatsu.core.util.ext.observe +import org.koitharu.kotatsu.settings.search.SettingsSearchMenuProvider +import org.koitharu.kotatsu.settings.search.SettingsSearchViewModel @AndroidEntryPoint class RootSettingsFragment : BasePreferenceFragment(0) { private val viewModel: RootSettingsViewModel by viewModels() + private val activityViewModel: SettingsSearchViewModel by activityViewModels() override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { addPreferencesFromResource(R.xml.pref_root) @@ -41,6 +46,8 @@ class RootSettingsFragment : BasePreferenceFragment(0) { } } } + addMenuProvider(SettingsSearchMenuProvider(activityViewModel)) + addMenuProvider(SettingsMenuProvider(view.context)) } override fun setTitle(title: CharSequence?) { diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/settings/SettingsActivity.kt b/app/src/main/kotlin/org/koitharu/kotatsu/settings/SettingsActivity.kt index 3d687637e..18c86b69e 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/settings/SettingsActivity.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/settings/SettingsActivity.kt @@ -34,7 +34,6 @@ import org.koitharu.kotatsu.parsers.model.MangaSource import org.koitharu.kotatsu.settings.about.AboutSettingsFragment import org.koitharu.kotatsu.settings.search.SettingsItem import org.koitharu.kotatsu.settings.search.SettingsSearchFragment -import org.koitharu.kotatsu.settings.search.SettingsSearchMenuProvider import org.koitharu.kotatsu.settings.search.SettingsSearchViewModel import org.koitharu.kotatsu.settings.sources.SourceSettingsFragment import org.koitharu.kotatsu.settings.sources.SourcesSettingsFragment @@ -76,8 +75,6 @@ class SettingsActivity : } viewModel.isSearchActive.observe(this, ::toggleSearchMode) viewModel.onNavigateToPreference.observeEvent(this, ::navigateToPreference) - addMenuProvider(SettingsSearchMenuProvider(viewModel)) - addMenuProvider(SettingsMenuProvider(this)) } override fun onPreferenceStartFragment(