Added smooth fade when theme is changed
This commit is contained in:
parent
6a5cc51db4
commit
381e112dac
5 changed files with 44 additions and 10 deletions
|
@ -23,6 +23,7 @@ import androidx.preference.ListPreference
|
|||
import androidx.preference.Preference
|
||||
import androidx.preference.PreferenceManager
|
||||
import code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceFragmentCompat
|
||||
import code.name.monkey.retromusic.activities.OnThemeChangedListener
|
||||
import code.name.monkey.retromusic.preferences.*
|
||||
import code.name.monkey.retromusic.util.NavigationUtil
|
||||
|
||||
|
@ -94,4 +95,12 @@ abstract class AbsSettingsFragment : ATEPreferenceFragmentCompat() {
|
|||
else -> super.onDisplayPreferenceDialog(preference)
|
||||
}
|
||||
}
|
||||
|
||||
fun restartActivity() {
|
||||
if (activity is OnThemeChangedListener) {
|
||||
(activity as OnThemeChangedListener).onThemeValuesChanged()
|
||||
} else {
|
||||
activity?.recreate()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -39,7 +39,7 @@ class OtherSettingsFragment : AbsSettingsFragment() {
|
|||
val languagePreference: ATEListPreference? = findPreference(LANGUAGE_NAME)
|
||||
languagePreference?.setOnPreferenceChangeListener { _, _ ->
|
||||
println("Invalidated")
|
||||
requireActivity().recreate()
|
||||
restartActivity()
|
||||
return@setOnPreferenceChangeListener true
|
||||
}
|
||||
}
|
||||
|
@ -69,7 +69,7 @@ class OtherSettingsFragment : AbsSettingsFragment() {
|
|||
manager.startInstall(request)
|
||||
// Recreate the activity on download complete
|
||||
.addOnCompleteListener {
|
||||
activity?.recreate()
|
||||
restartActivity()
|
||||
}
|
||||
} else {
|
||||
requireActivity().recreate()
|
||||
|
|
|
@ -25,7 +25,7 @@ class PersonalizeSettingsFragment : AbsSettingsFragment() {
|
|||
override fun invalidateSettings() {
|
||||
val toggleFullScreen: TwoStatePreference? = findPreference(TOGGLE_FULL_SCREEN)
|
||||
toggleFullScreen?.setOnPreferenceChangeListener { _, _ ->
|
||||
requireActivity().recreate()
|
||||
restartActivity()
|
||||
true
|
||||
}
|
||||
}
|
||||
|
|
|
@ -49,7 +49,7 @@ class ThemeSettingsFragment : AbsSettingsFragment() {
|
|||
requireActivity().setTheme(PreferenceUtil.themeResFromPrefValue(theme))
|
||||
DynamicShortcutManager(requireContext()).updateDynamicShortcuts()
|
||||
}
|
||||
requireActivity().recreate()
|
||||
restartActivity()
|
||||
true
|
||||
}
|
||||
}
|
||||
|
@ -68,7 +68,7 @@ class ThemeSettingsFragment : AbsSettingsFragment() {
|
|||
ThemeStore.editTheme(requireContext()).accentColor(color).commit()
|
||||
if (VersionUtils.hasNougatMR())
|
||||
DynamicShortcutManager(requireContext()).updateDynamicShortcuts()
|
||||
requireActivity().recreate()
|
||||
restartActivity()
|
||||
}
|
||||
}
|
||||
return@setOnPreferenceClickListener true
|
||||
|
@ -84,7 +84,7 @@ class ThemeSettingsFragment : AbsSettingsFragment() {
|
|||
requireActivity().setTheme(PreferenceUtil.themeResFromPrefValue("black"))
|
||||
DynamicShortcutManager(requireContext()).updateDynamicShortcuts()
|
||||
}
|
||||
requireActivity().recreate()
|
||||
restartActivity()
|
||||
true
|
||||
}
|
||||
|
||||
|
@ -96,7 +96,7 @@ class ThemeSettingsFragment : AbsSettingsFragment() {
|
|||
.putBoolean("desaturated_color", desaturated)
|
||||
.apply()
|
||||
PreferenceUtil.isDesaturatedColor = desaturated
|
||||
requireActivity().recreate()
|
||||
restartActivity()
|
||||
true
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue