From add72c0be360f17c07a5a39696a7a44cf7a83bf0 Mon Sep 17 00:00:00 2001 From: Koitharu Date: Fri, 28 Jan 2022 19:31:28 +0200 Subject: [PATCH] Fix settings ui --- .../kotatsu/settings/MainSettingsFragment.kt | 5 ++--- .../kotatsu/settings/SettingsActivity.kt | 18 +++++++++++++++++- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/org/koitharu/kotatsu/settings/MainSettingsFragment.kt b/app/src/main/java/org/koitharu/kotatsu/settings/MainSettingsFragment.kt index a9ab89ab1..2df6558b6 100644 --- a/app/src/main/java/org/koitharu/kotatsu/settings/MainSettingsFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/settings/MainSettingsFragment.kt @@ -6,7 +6,6 @@ import android.os.Bundle import android.view.View import androidx.appcompat.app.AppCompatDelegate import androidx.preference.* -import com.google.android.material.color.DynamicColors import org.koitharu.kotatsu.R import org.koitharu.kotatsu.base.ui.BasePreferenceFragment import org.koitharu.kotatsu.base.ui.dialog.StorageSelectDialog @@ -39,6 +38,8 @@ class MainSettingsFragment : BasePreferenceFragment(R.string.settings), entryValues = ListMode.values().names() setDefaultValueCompat(ListMode.GRID.name) } + findPreference(AppSettings.KEY_DYNAMIC_THEME)?.isVisible = + DeviceUtil.isDynamicColorAvailable findPreference(AppSettings.KEY_DATE_FORMAT)?.run { entryValues = arrayOf("", "MM/dd/yy", "dd/MM/yy", "yyyy-MM-dd", "dd MMM yyyy", "MMM dd, yyyy") val now = Date().time @@ -57,8 +58,6 @@ class MainSettingsFragment : BasePreferenceFragment(R.string.settings), override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - findPreference(AppSettings.KEY_DYNAMIC_THEME)?.isVisible = - DeviceUtil.isDynamicColorAvailable findPreference(AppSettings.KEY_LOCAL_STORAGE)?.run { summary = settings.getStorageDir(context)?.getStorageName(context) ?: getString(R.string.not_available) diff --git a/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt b/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt index 24d85fc7f..0bbf93799 100644 --- a/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt +++ b/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt @@ -8,6 +8,7 @@ import androidx.core.graphics.Insets import androidx.core.view.updateLayoutParams import androidx.core.view.updatePadding import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentTransaction import androidx.fragment.app.commit import androidx.preference.Preference @@ -18,7 +19,8 @@ import org.koitharu.kotatsu.core.model.MangaSource import org.koitharu.kotatsu.databinding.ActivitySettingsBinding class SettingsActivity : BaseActivity(), - PreferenceFragmentCompat.OnPreferenceStartFragmentCallback { + PreferenceFragmentCompat.OnPreferenceStartFragmentCallback, + FragmentManager.OnBackStackChangedListener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -32,6 +34,20 @@ class SettingsActivity : BaseActivity(), } } + override fun onStart() { + super.onStart() + supportFragmentManager.addOnBackStackChangedListener(this) + } + + override fun onStop() { + supportFragmentManager.removeOnBackStackChangedListener(this) + super.onStop() + } + + override fun onBackStackChanged() { + binding.appbar.setExpanded(true, true) + } + override fun onPreferenceStartFragment( caller: PreferenceFragmentCompat, pref: Preference