don't drop customization in same cases

This commit is contained in:
Avently
2024-05-07 19:27:18 +07:00
parent c12340c59a
commit 1abe14aab7
2 changed files with 4 additions and 5 deletions
@@ -138,9 +138,11 @@ object ThemeManager {
fun saveAndApplyBackgroundImage(baseTheme: DefaultTheme, type: BackgroundImageType?, pref: SharedPreference<Map<String, ThemeOverrides>> = appPrefs.themeOverrides) {
val nonSystemThemeName = baseTheme.name
val overrides = pref.get().toMutableMap()
// val prevValue = overrides.getOrDefault(nonSystemThemeName, ThemeOverrides())
var prevValue = overrides.getOrDefault(nonSystemThemeName, ThemeOverrides())
// Overriding the whole theme on type change
val prevValue = ThemeOverrides()
if (prevValue.wallpaper.imageFile != type?.filename && prevValue.wallpaper.preset != type?.filename) {
prevValue = ThemeOverrides()
}
overrides[nonSystemThemeName] = prevValue.copy(wallpaper = if (type != null) ThemeWallpaper.from(type, prevValue.wallpaper.background, prevValue.wallpaper.tint) else ThemeWallpaper())
pref.set(overrides)
CurrentColors.value = currentColors(!CurrentColors.value.colors.isLight, appPrefs.themeOverrides.get())
@@ -118,9 +118,6 @@ object AppearanceScope {
val cornerRadius = 22
fun setBackground(type: BackgroundImageType?) {
if (type is BackgroundImageType.Static || CurrentColors.value.wallpaper.type is BackgroundImageType.Static) {
resetColors()
}
onTypeChange(type)
}