manager: fix dark theme color

This commit is contained in:
YuKongA
2025-11-27 08:49:19 +08:00
committed by shirkneko
parent 314fbe8cf7
commit 228b6b1273
4 changed files with 18 additions and 9 deletions

View File

@@ -9,7 +9,6 @@ import androidx.compose.animation.expandVertically
import androidx.compose.animation.fadeIn
import androidx.compose.animation.fadeOut
import androidx.compose.animation.shrinkVertically
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
@@ -44,7 +43,6 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.produceState
import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
@@ -74,6 +72,7 @@ import com.sukisu.ultra.getKernelVersion
import com.sukisu.ultra.ui.component.DropdownItem
import com.sukisu.ultra.ui.component.RebootListPopup
import com.sukisu.ultra.ui.component.rememberConfirmDialog
import com.sukisu.ultra.ui.theme.isInDarkTheme
import com.sukisu.ultra.ui.util.*
import com.sukisu.ultra.ui.util.module.LatestVersionInfo
import com.sukisu.ultra.ui.util.reboot
@@ -347,7 +346,7 @@ private fun StatusCard(
colors = CardDefaults.defaultColors(
color = when {
isDynamicColor -> colorScheme.secondaryContainer
isSystemInDarkTheme() || themeMode == 2 -> Color(0xFF1A3825)
isInDarkTheme(themeMode) -> Color(0xFF1A3825)
else -> Color(0xFFDFFAE4)
}
),
@@ -531,7 +530,7 @@ fun WarningCard(
colors = CardDefaults.defaultColors(
color = color ?: when {
isDynamicColor -> colorScheme.errorContainer
isSystemInDarkTheme() || themeMode == 2 -> Color(0XFF310808)
isInDarkTheme(themeMode) -> Color(0XFF310808)
else -> Color(0xFFF8E2E2)
}
),

View File

@@ -19,7 +19,6 @@ import androidx.compose.animation.shrinkHorizontally
import androidx.compose.animation.shrinkVertically
import androidx.compose.foundation.background
import androidx.compose.foundation.border
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
@@ -46,7 +45,6 @@ import androidx.compose.foundation.lazy.items
import androidx.compose.foundation.lazy.rememberLazyListState
import androidx.compose.foundation.shape.CircleShape
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.automirrored.outlined.Undo
import androidx.compose.material.icons.outlined.Delete
import androidx.compose.material.icons.rounded.Add
import androidx.compose.material.icons.rounded.Code
@@ -111,6 +109,7 @@ import com.sukisu.ultra.ui.component.SearchBox
import com.sukisu.ultra.ui.component.SearchPager
import com.sukisu.ultra.ui.component.rememberConfirmDialog
import com.sukisu.ultra.ui.component.rememberLoadingDialog
import com.sukisu.ultra.ui.theme.isInDarkTheme
import com.sukisu.ultra.ui.util.DownloadListener
import com.sukisu.ultra.ui.util.download
import com.sukisu.ultra.ui.util.getFileName
@@ -894,7 +893,7 @@ fun ModuleItem(
) {
val context = LocalContext.current
val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE)
val isDark = isSystemInDarkTheme() || prefs.getInt("color_mode", 0) == 2 || prefs.getInt("color_mode", 0) == 5
val isDark = isInDarkTheme(prefs.getInt("color_mode", 0))
val colorScheme = colorScheme
val secondaryContainer = colorScheme.secondaryContainer.copy(alpha = 0.8f)
val actionIconTint = remember(isDark) { colorScheme.onSurface.copy(alpha = if (isDark) 0.7f else 0.9f) }

View File

@@ -10,7 +10,6 @@ import androidx.compose.animation.shrinkVertically
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.basicMarquee
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
@@ -77,6 +76,7 @@ import com.sukisu.ultra.ui.component.AppIconImage
import com.sukisu.ultra.ui.component.DropdownItem
import com.sukisu.ultra.ui.component.SearchBox
import com.sukisu.ultra.ui.component.SearchPager
import com.sukisu.ultra.ui.theme.isInDarkTheme
import com.sukisu.ultra.ui.util.ownerNameForUid
import com.sukisu.ultra.ui.util.pickPrimary
import com.sukisu.ultra.ui.viewmodel.SuperUserViewModel
@@ -470,7 +470,7 @@ private fun GroupItem(
) {
val context = LocalContext.current
val prefs = context.getSharedPreferences("settings", Context.MODE_PRIVATE)
val isDark = isSystemInDarkTheme() || prefs.getInt("color_mode", 0) == 2 || prefs.getInt("color_mode", 0) == 5
val isDark = isInDarkTheme(prefs.getInt("color_mode", 0))
val colorScheme = colorScheme
val bg = remember(colorScheme) { colorScheme.secondaryContainer.copy(alpha = 0.8f) }
val rootBg = remember(colorScheme) { colorScheme.tertiaryContainer.copy(alpha = 0.6f) }

View File

@@ -2,6 +2,7 @@ package com.sukisu.ultra.ui.theme
import androidx.compose.foundation.isSystemInDarkTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.ReadOnlyComposable
import androidx.compose.ui.graphics.Color
import com.sukisu.ultra.ui.webui.MonetColorsProvider.UpdateCss
import top.yukonga.miuix.kmp.theme.ColorSchemeMode
@@ -44,3 +45,13 @@ fun KernelSUTheme(
}
)
}
@Composable
@ReadOnlyComposable
fun isInDarkTheme(themeMode: Int): Boolean {
return when (themeMode) {
1, 4 -> false // Force light mode
2, 5 -> true // Force dark mode
else -> isSystemInDarkTheme() // Follow system (0 or default)
}
}