diff --git a/apps/android/app/src/main/java/ai/openclaw/app/ui/OpenClawTheme.kt b/apps/android/app/src/main/java/ai/openclaw/app/ui/OpenClawTheme.kt index cfcceb4f3da..e0b45c6f12e 100644 --- a/apps/android/app/src/main/java/ai/openclaw/app/ui/OpenClawTheme.kt +++ b/apps/android/app/src/main/java/ai/openclaw/app/ui/OpenClawTheme.kt @@ -1,13 +1,17 @@ package ai.openclaw.app.ui +import android.app.Activity import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.material3.MaterialTheme import androidx.compose.material3.dynamicDarkColorScheme import androidx.compose.material3.dynamicLightColorScheme import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider +import androidx.compose.runtime.SideEffect import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.LocalContext +import androidx.compose.ui.platform.LocalView +import androidx.core.view.WindowCompat @Composable fun OpenClawTheme(content: @Composable () -> Unit) { @@ -16,6 +20,15 @@ fun OpenClawTheme(content: @Composable () -> Unit) { val colorScheme = if (isDark) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context) val mobileColors = if (isDark) darkMobileColors() else lightMobileColors() + val view = LocalView.current + if (!view.isInEditMode) { + SideEffect { + val window = (view.context as Activity).window + WindowCompat.getInsetsController(window, window.decorView) + .isAppearanceLightStatusBars = !isDark + } + } + CompositionLocalProvider(LocalMobileColors provides mobileColors) { MaterialTheme(colorScheme = colorScheme, content = content) }