From c7a66821ac6d0f4cbd9a3f5f81088fda439e73bd Mon Sep 17 00:00:00 2001 From: MM20 <15646950+MM2-0@users.noreply.github.com> Date: Sun, 1 Jun 2025 18:13:42 +0200 Subject: [PATCH] (fix) incorrect shape scheme name on appearance settings screen --- .../ui/settings/appearance/AppearanceSettingsScreen.kt | 8 ++++---- .../ui/settings/appearance/AppearanceSettingsScreenVM.kt | 9 ++++++++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreen.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreen.kt index ca99dfe5..2f9c7541 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreen.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreen.kt @@ -4,7 +4,6 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.rounded.CropSquare import androidx.compose.material.icons.rounded.Palette import androidx.compose.material.icons.rounded.TextFields -import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState @@ -31,7 +30,8 @@ fun AppearanceSettingsScreen() { val viewModel: AppearanceSettingsScreenVM = viewModel() val context = LocalContext.current val navController = LocalNavController.current - val themeName by viewModel.themeName.collectAsStateWithLifecycle(null) + val colorThemeName by viewModel.colorThemeName.collectAsStateWithLifecycle(null) + val shapeThemeName by viewModel.shapeThemeName.collectAsStateWithLifecycle(null) val compatModeColors by viewModel.compatModeColors.collectAsState() PreferenceScreen(title = stringResource(id = R.string.preference_screen_appearance)) { item { @@ -56,7 +56,7 @@ fun AppearanceSettingsScreen() { PreferenceCategory { Preference( title = stringResource(id = R.string.preference_screen_colors), - summary = themeName, + summary = colorThemeName, onClick = { navController?.navigate("settings/appearance/colors") }, @@ -83,7 +83,7 @@ fun AppearanceSettingsScreen() { ) Preference( title = stringResource(id = R.string.preference_screen_shapes), - summary = themeName, + summary = shapeThemeName, onClick = { navController?.navigate("settings/appearance/shapes") }, diff --git a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreenVM.kt b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreenVM.kt index 49da7338..62dd764b 100644 --- a/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreenVM.kt +++ b/app/ui/src/main/java/de/mm20/launcher2/ui/settings/appearance/AppearanceSettingsScreenVM.kt @@ -25,13 +25,20 @@ class AppearanceSettingsScreenVM : ViewModel(), KoinComponent { uiSettings.setColorScheme(colorScheme) } - val themeName = uiSettings.colors.flatMapLatest { + val colorThemeName = uiSettings.colors.flatMapLatest { themeRepository.getColorsOrDefault(it) }.map { it.name } .stateIn(viewModelScope, SharingStarted.WhileSubscribed(), null) + val shapeThemeName = uiSettings.shapes.flatMapLatest { + themeRepository.getShapesOrDefault(it) + }.map { + it.name + } + .stateIn(viewModelScope, SharingStarted.WhileSubscribed(), null) + val compatModeColors = uiSettings.compatModeColors .stateIn(viewModelScope, SharingStarted.WhileSubscribed(), false)