Move SystemUi into Preferences

This commit is contained in:
Patryk Michalik
2021-03-21 13:58:29 +01:00
parent c676e3e6b5
commit 96116ed92a
3 changed files with 9 additions and 19 deletions

View File

@@ -11,9 +11,8 @@ class PreferenceActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
SystemUi(windows = this.window)
LawnchairTheme {
Preferences()
Preferences(window = this.window)
}
}
}

View File

@@ -4,12 +4,9 @@ import android.app.Application
import android.content.ComponentName
import android.content.Intent
import android.content.pm.ResolveInfo
import android.os.Build
import android.provider.Settings.Secure.getString
import android.view.View
import android.view.Window
import androidx.annotation.DrawableRes
import androidx.annotation.RequiresApi
import androidx.annotation.StringRes
import androidx.appcompat.content.res.AppCompatResources
import androidx.compose.animation.ExperimentalAnimationApi
@@ -22,16 +19,11 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.MutableState
import androidx.compose.runtime.mutableStateOf
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.luminance
import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.LocalWindowInfo
import androidx.lifecycle.AndroidViewModel
import androidx.lifecycle.viewmodel.compose.viewModel
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController
import ch.deletescape.lawnchair.ui.theme.LawnchairTheme
import ch.deletescape.lawnchair.util.preferences.PrefManager
import com.android.launcher3.R
import com.android.launcher3.notification.NotificationListener
@@ -238,9 +230,10 @@ val screens = listOf(
@ExperimentalAnimationApi
@Composable
fun Preferences(interactor: PreferenceInteractor = viewModel<PreferenceViewModel>()) {
fun Preferences(interactor: PreferenceInteractor = viewModel<PreferenceViewModel>(), window: Window) {
val navController = rememberNavController()
SystemUi(window = window)
Column(
modifier = Modifier
.background(MaterialTheme.colors.background)

View File

@@ -3,29 +3,27 @@ package ch.deletescape.lawnchair.ui.preferences
import android.os.Build
import android.view.View
import android.view.Window
import androidx.annotation.RequiresApi
import androidx.compose.material.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.luminance
import androidx.compose.ui.graphics.toArgb
import ch.deletescape.lawnchair.ui.theme.LawnchairTheme
@RequiresApi(Build.VERSION_CODES.O)
@Composable
fun SystemUi(windows: Window) =
fun SystemUi(window: Window) =
LawnchairTheme {
windows.statusBarColor = MaterialTheme.colors.background.toArgb()
windows.navigationBarColor = MaterialTheme.colors.background.toArgb()
window.statusBarColor = MaterialTheme.colors.background.toArgb()
window.navigationBarColor = MaterialTheme.colors.background.toArgb()
@Suppress("DEPRECATION")
if (MaterialTheme.colors.background.luminance() > 0.5f) {
windows.decorView.systemUiVisibility = windows.decorView.systemUiVisibility or
window.decorView.systemUiVisibility = window.decorView.systemUiVisibility or
View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR
}
@Suppress("DEPRECATION")
if (MaterialTheme.colors.background.luminance() > 0.5f) {
windows.decorView.systemUiVisibility = windows.decorView.systemUiVisibility or
if (MaterialTheme.colors.background.luminance() > 0.5f && Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
window.decorView.systemUiVisibility = window.decorView.systemUiVisibility or
View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR
}
}