From 5c5efdc911138dbe5df9ff805d56453484f46350 Mon Sep 17 00:00:00 2001 From: ganfra Date: Wed, 23 Nov 2022 18:56:01 +0100 Subject: [PATCH] Theme: try to play with insets --- app/src/main/java/io/element/android/x/MainActivity.kt | 2 ++ .../element/android/x/features/messages/MessagesScreen.kt | 1 + .../android/x/features/onboarding/OnBoardingScreen.kt | 1 + .../main/java/io/element/android/x/designsystem/Theme.kt | 6 ++++++ 4 files changed, 10 insertions(+) diff --git a/app/src/main/java/io/element/android/x/MainActivity.kt b/app/src/main/java/io/element/android/x/MainActivity.kt index f67bff9f4a..048e806805 100644 --- a/app/src/main/java/io/element/android/x/MainActivity.kt +++ b/app/src/main/java/io/element/android/x/MainActivity.kt @@ -17,6 +17,7 @@ import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview +import androidx.core.view.WindowCompat import com.google.accompanist.navigation.material.ExperimentalMaterialNavigationApi import com.ramcosta.composedestinations.DestinationsNavHost import com.ramcosta.composedestinations.animations.defaults.RootNavGraphDefaultAnimations @@ -34,6 +35,7 @@ class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) + WindowCompat.setDecorFitsSystemWindows(window, false) setContent { ElementXTheme { MainScreen(viewModel = viewModel) diff --git a/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt b/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt index a027bd14fe..1da7dba4e2 100644 --- a/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt +++ b/features/messages/src/main/java/io/element/android/x/features/messages/MessagesScreen.kt @@ -199,6 +199,7 @@ fun MessagesContent( composerText = composerText?.charSequence?.toString(), modifier = Modifier .fillMaxWidth() + .imePadding() .let { if (composerFullScreen) { it.weight(1f) diff --git a/features/onboarding/src/main/java/io/element/android/x/features/onboarding/OnBoardingScreen.kt b/features/onboarding/src/main/java/io/element/android/x/features/onboarding/OnBoardingScreen.kt index 6de8e13c7c..db037dd9d5 100644 --- a/features/onboarding/src/main/java/io/element/android/x/features/onboarding/OnBoardingScreen.kt +++ b/features/onboarding/src/main/java/io/element/android/x/features/onboarding/OnBoardingScreen.kt @@ -113,6 +113,7 @@ fun OnBoardingContent( }, enabled = true, modifier = Modifier + .navigationBarsPadding() .align(CenterHorizontally) .padding(top = 16.dp) ) diff --git a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt index cb1035f7ad..5f485cb9bb 100644 --- a/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt +++ b/libraries/designsystem/src/main/java/io/element/android/x/designsystem/Theme.kt @@ -60,10 +60,16 @@ fun ElementXTheme( else -> LightColorScheme } val systemUiController = rememberSystemUiController() + val useDarkIcons = !darkTheme + SideEffect { systemUiController.setStatusBarColor( color = colorScheme.background ) + systemUiController.setSystemBarsColor( + color = Color.Transparent, + darkIcons = useDarkIcons + ) } MaterialTheme(