From ea01dec6ea43d6e3980a07218f8bbf198e43d602 Mon Sep 17 00:00:00 2001 From: Kingkor Roy Tirtho Date: Tue, 27 Oct 2026 18:49:20 +0600 Subject: [PATCH] fix(settings): palette swatches follow the active light/dark appearance Co-Authored-By: Claude Sonnet 5.5 --- .../modules/settings/sections/AppearanceSection.kt | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/sections/AppearanceSection.kt b/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/sections/AppearanceSection.kt index 9b7ba138..3186eb9e 100644 --- a/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/sections/AppearanceSection.kt +++ b/composeApp/src/commonMain/kotlin/org/spotube/spotube/modules/settings/sections/AppearanceSection.kt @@ -44,11 +44,11 @@ import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip import androidx.compose.ui.graphics.Color -import androidx.compose.ui.graphics.luminance import androidx.compose.ui.semantics.contentDescription import androidx.compose.ui.semantics.semantics import androidx.compose.ui.unit.dp import org.spotube.spotube.core.ui.theming.AppTheme +import org.spotube.spotube.core.ui.theming.isLightAppearance import org.spotube.spotube.modules.settings.SettingsViewModel import org.spotube.spotube.modules.settings.Theme import org.spotube.spotube.modules.settings.UserSettings @@ -206,7 +206,8 @@ private fun PaletteSwatch( label: String, selected: Boolean, onClick: () -> Unit) { - val scheme = remember(palette) { MillenniumColorSchemes().resolve(palette, dark = false) } + val dark = !isLightAppearance() + val scheme = remember(palette, dark) { MillenniumColorSchemes().resolve(palette, dark = dark) } Box( modifier = Modifier .size(40.dp) @@ -222,7 +223,8 @@ private fun PaletteSwatch( @Composable private fun PaletteTrailingSwatch(palette: MillenniumPalette) { - val scheme = remember(palette) { MillenniumColorSchemes().resolve(palette, dark = false) } + val dark = !isLightAppearance() + val scheme = remember(palette, dark) { MillenniumColorSchemes().resolve(palette, dark = dark) } Row( horizontalArrangement = Arrangement.spacedBy(6.dp), verticalAlignment = Alignment.CenterVertically) { @@ -241,7 +243,7 @@ private fun PaletteTrailingSwatch(palette: MillenniumPalette) { @Composable private fun PalettePreview(palette: MillenniumPalette) { - val dark = AppTheme.colors.background.luminance() < 0.5f + val dark = !isLightAppearance() MillenniumTheme(dark = dark, config = MillenniumThemeConfig(palette = palette)) { Column( modifier = Modifier