Fix flickering screen

This commit is contained in:
Sad Ellie 2023-05-02 10:18:57 +03:00
parent 34521e306e
commit c5cfd5bac7
3 changed files with 23 additions and 7 deletions

View File

@ -18,9 +18,14 @@
package com.sadellie.unitto
import android.app.Activity
import android.content.Context
import android.os.Bundle
import android.util.AttributeSet
import android.view.View
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.core.view.WindowCompat
import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint
@ -33,4 +38,16 @@ internal class MainActivity : ComponentActivity() {
UnittoApp()
}
}
override fun onCreateView(
parent: View?,
name: String,
context: Context,
attrs: AttributeSet
): View? {
if (parent != null) {
WindowCompat.setDecorFitsSystemWindows((parent.context as Activity).window, false)
}
return super.onCreateView(parent, name, context, attrs)
}
}

View File

@ -18,7 +18,6 @@
package com.sadellie.unitto
import android.app.Activity
import androidx.compose.animation.core.tween
import androidx.compose.material3.DrawerValue
import androidx.compose.material3.MaterialTheme
@ -34,8 +33,6 @@ import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.luminance
import androidx.compose.ui.platform.LocalView
import androidx.core.view.WindowCompat
import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import androidx.navigation.NavDestination.Companion.hierarchy
@ -44,8 +41,8 @@ import androidx.navigation.compose.currentBackStackEntryAsState
import androidx.navigation.compose.rememberNavController
import com.google.accompanist.systemuicontroller.rememberSystemUiController
import com.sadellie.unitto.core.base.TopLevelDestinations
import com.sadellie.unitto.core.ui.model.DrawerItems
import com.sadellie.unitto.core.ui.common.UnittoDrawerSheet
import com.sadellie.unitto.core.ui.model.DrawerItems
import com.sadellie.unitto.core.ui.theme.AppTypography
import com.sadellie.unitto.core.ui.theme.DarkThemeColors
import com.sadellie.unitto.core.ui.theme.LightThemeColors
@ -109,7 +106,6 @@ internal fun UnittoApp() {
typography = AppTypography,
animationSpec = tween(250)
) {
val localView = LocalView.current
val backgroundColor = MaterialTheme.colorScheme.background
val useDarkIcons by remember(backgroundColor) {
mutableStateOf(backgroundColor.luminance() > 0.5f)
@ -148,7 +144,6 @@ internal fun UnittoApp() {
}
LaunchedEffect(useDarkIcons) {
WindowCompat.setDecorFitsSystemWindows((localView.context as Activity).window, false)
sysUiController.setNavigationBarColor(Color.Transparent, useDarkIcons)
sysUiController.setStatusBarColor(Color.Transparent, useDarkIcons)
}

View File

@ -18,7 +18,10 @@
package com.sadellie.unitto
import androidx.compose.foundation.background
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.navigation.NavGraph.Companion.findStartDestination
import androidx.navigation.NavHostController
import androidx.navigation.compose.NavHost
@ -49,7 +52,8 @@ internal fun UnittoNavigation(
) {
NavHost(
navController = navController,
startDestination = startDestination
startDestination = startDestination,
modifier = Modifier.background(MaterialTheme.colorScheme.background)
) {
fun navigateToSettings() {
navController.navigateToSettings {