fix(settings): 在主题色板没用跟随用户设置切换深色模式

This commit is contained in:
Super12138 2025-02-06 19:56:18 +08:00
parent 4e1ede0aae
commit e44dcb8c5a
2 changed files with 10 additions and 1 deletions

View file

@ -36,6 +36,7 @@ import cn.super12138.todo.utils.VibrationUtils
@Composable
fun PaletteItem(
isDark: Boolean,
paletteStyle: PaletteStyle,
contrastLevel: ContrastLevel,
selected: Boolean,
@ -63,7 +64,7 @@ fun PaletteItem(
} else {
Color(0xFF0061A4)
},
isDark = isSystemInDarkTheme(),
isDark = isDark,
contrastLevel = contrastLevel.value.toDouble(),
style = paletteStyle
)

View file

@ -1,5 +1,6 @@
package cn.super12138.todo.ui.pages.settings.components.palette
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.lazy.items
import androidx.compose.runtime.Composable
@ -12,12 +13,14 @@ import androidx.compose.ui.unit.dp
import cn.super12138.todo.R
import cn.super12138.todo.constants.Constants
import cn.super12138.todo.logic.model.ContrastLevel
import cn.super12138.todo.logic.model.DarkMode
import cn.super12138.todo.ui.pages.settings.components.RowSettingsItem
import cn.super12138.todo.ui.pages.settings.state.rememberPrefIntState
import cn.super12138.todo.ui.theme.PaletteStyle
@Composable
fun PalettePicker(
isDarkMode: DarkMode,
contrastLevel: ContrastLevel,
onPaletteChange: (paletteStyle: PaletteStyle) -> Unit,
modifier: Modifier = Modifier
@ -38,6 +41,11 @@ fun PalettePicker(
) {
items(items = paletteOptions, key = { it.id }) { paletteStyle ->
PaletteItem(
isDark = when (isDarkMode) {
DarkMode.FollowSystem -> isSystemInDarkTheme()
DarkMode.Light -> false
DarkMode.Dark -> true
},
paletteStyle = paletteStyle,
selected = PaletteStyle.fromId(paletteState) == paletteStyle,
contrastLevel = contrastLevel,