@@ -14,10 +14,13 @@ import androidx.activity.ComponentActivity
14
14
import androidx.activity.compose.setContent
15
15
import androidx.activity.enableEdgeToEdge
16
16
import androidx.activity.viewModels
17
+ import androidx.compose.foundation.isSystemInDarkTheme
17
18
import androidx.compose.runtime.CompositionLocalProvider
19
+ import androidx.compose.runtime.DisposableEffect
18
20
import androidx.compose.runtime.getValue
19
21
import androidx.compose.runtime.mutableStateOf
20
22
import androidx.compose.runtime.setValue
23
+ import androidx.compose.ui.graphics.toArgb
21
24
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
22
25
import androidx.lifecycle.Lifecycle
23
26
import androidx.lifecycle.lifecycleScope
@@ -30,6 +33,8 @@ import kotlinx.coroutines.launch
30
33
import org.mifos.mobile.HomeActivityUiState.Success
31
34
import org.mifos.mobile.core.data.utils.NetworkMonitor
32
35
import org.mifos.mobile.core.designsystem.theme.MifosMobileTheme
36
+ import org.mifos.mobile.core.designsystem.theme.darkScrim
37
+ import org.mifos.mobile.core.designsystem.theme.lightScrim
33
38
import org.mifos.mobile.navigation.MifosNavGraph.AUTH_GRAPH
34
39
import org.mifos.mobile.navigation.MifosNavGraph.PASSCODE_GRAPH
35
40
import org.mifos.mobile.navigation.RootNavGraph
@@ -71,7 +76,7 @@ class HomeActivity : ComponentActivity() {
71
76
val navController = rememberNavController()
72
77
73
78
val appState = rememberMifosMobileState(networkMonitor = networkMonitor)
74
-
79
+ val darkTheme = isSystemInDarkTheme()
75
80
val navDestination = when (uiState) {
76
81
is Success -> if ((uiState as Success ).userData.isAuthenticated) {
77
82
PASSCODE_GRAPH
@@ -82,6 +87,12 @@ class HomeActivity : ComponentActivity() {
82
87
else -> AUTH_GRAPH
83
88
}
84
89
90
+ DisposableEffect (darkTheme) {
91
+ window?.statusBarColor = if (darkTheme) darkScrim.toArgb() else lightScrim.toArgb()
92
+ window?.navigationBarColor = if (darkTheme) darkScrim.toArgb() else lightScrim.toArgb()
93
+ onDispose {}
94
+ }
95
+
85
96
CompositionLocalProvider {
86
97
MifosMobileTheme {
87
98
RootNavGraph (
0 commit comments