mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-07-28 16:29:49 +00:00
different defaults
This commit is contained in:
+3
-5
@@ -342,11 +342,9 @@ data class ThemeModeOverrides (
|
||||
val light: ThemeModeOverride? = null,
|
||||
val dark: ThemeModeOverride? = null
|
||||
) {
|
||||
fun preferredTheme(baseTheme: DefaultTheme = CurrentColors.value.base): ThemeModeOverride? {
|
||||
return when (baseTheme) {
|
||||
DefaultTheme.LIGHT -> light
|
||||
else -> dark
|
||||
}
|
||||
fun preferredTheme(baseTheme: DefaultTheme = CurrentColors.value.base): ThemeModeOverride? = when (baseTheme) {
|
||||
DefaultTheme.LIGHT -> light
|
||||
else -> dark
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+9
-5
@@ -700,13 +700,17 @@ fun ShareAddressButton(onClick: () -> Unit) {
|
||||
|
||||
@Composable
|
||||
fun ModalData.WallpaperEditorModal(chat: Chat) {
|
||||
val themes = remember(CurrentColors.value.base) {
|
||||
(chat.chatInfo as? ChatInfo.Direct)?.contact?.uiThemes
|
||||
?: (chat.chatInfo as? ChatInfo.Group)?.groupInfo?.uiThemes
|
||||
?: ThemeModeOverrides()
|
||||
}
|
||||
val initialTheme = remember(CurrentColors.value.base) {
|
||||
(chat.chatInfo as? ChatInfo.Direct)?.contact?.uiThemes?.preferredTheme()?.copy(mode = CurrentColors.value.base.mode)
|
||||
?: (chat.chatInfo as? ChatInfo.Group)?.groupInfo?.uiThemes?.preferredTheme()?.copy(mode = CurrentColors.value.base.mode)
|
||||
?: ThemeModeOverride()
|
||||
(themes.preferredTheme() ?: ThemeModeOverride()).copy(mode = CurrentColors.value.base.mode)
|
||||
}
|
||||
WallpaperEditor(
|
||||
initialTheme,
|
||||
applyToMode = if (themes.light == themes.dark) null else initialTheme.mode,
|
||||
save = { applyToMode, newTheme ->
|
||||
withBGApi {
|
||||
var changedThemes: ThemeModeOverrides? = ((chat.chatInfo as? ChatInfo.Direct)?.contact?.uiThemes ?: (chat.chatInfo as? ChatInfo.Group)?.groupInfo?.uiThemes) ?: ThemeModeOverrides()
|
||||
@@ -753,12 +757,12 @@ fun ModalData.WallpaperEditorModal(chat: Chat) {
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun ModalData.WallpaperEditor(theme: ThemeModeOverride, save: (applyToMode: DefaultThemeMode?, ThemeModeOverride?) -> Unit, setDefaultsToAll: suspend () -> ThemeModeOverride) {
|
||||
fun ModalData.WallpaperEditor(theme: ThemeModeOverride, applyToMode: DefaultThemeMode?, save: (applyToMode: DefaultThemeMode?, ThemeModeOverride?) -> Unit, setDefaultsToAll: suspend () -> ThemeModeOverride) {
|
||||
ColumnWithScrollBar(
|
||||
Modifier
|
||||
.fillMaxSize()
|
||||
) {
|
||||
val applyToMode = remember { stateGetOrPutNullable("applyToMode") { null as DefaultThemeMode? } }
|
||||
val applyToMode = remember { stateGetOrPutNullable("applyToMode") { applyToMode } }
|
||||
var showMore by remember { stateGetOrPut("showMore") { false } }
|
||||
val themeModeOverride = remember { stateGetOrPut("themeModeOverride") { theme } }
|
||||
val backgroundImageType: State<BackgroundImageType?> = remember { derivedStateOf { BackgroundImageType.from(themeModeOverride.value.wallpaper) } }
|
||||
|
||||
Reference in New Issue
Block a user