diff --git a/app/src/main/java/com/topjohnwu/magisk/arch/UIActivity.kt b/app/src/main/java/com/topjohnwu/magisk/arch/UIActivity.kt index 43c71a64f..9a257aa0c 100644 --- a/app/src/main/java/com/topjohnwu/magisk/arch/UIActivity.kt +++ b/app/src/main/java/com/topjohnwu/magisk/arch/UIActivity.kt @@ -7,6 +7,7 @@ import android.os.Bundle import android.view.View import androidx.appcompat.app.AppCompatDelegate import androidx.core.content.res.use +import androidx.core.view.WindowCompat import androidx.databinding.DataBindingUtil import androidx.databinding.ViewDataBinding import com.topjohnwu.magisk.BR @@ -42,17 +43,13 @@ abstract class UIActivity : BaseActivity(), ViewModel .use { it.getDrawable(0) } .also { window.setBackgroundDrawable(it) } - window?.decorView?.let { - it.systemUiVisibility = (it.systemUiVisibility - or View.SYSTEM_UI_FLAG_LAYOUT_STABLE - or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN - or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION) - } + WindowCompat.setDecorFitsSystemWindows(window, false) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { window?.decorView?.post { // If navigation bar is short enough (gesture navigation enabled), make it transparent - if (window.decorView.rootWindowInsets?.systemWindowInsetBottom ?: 0 < Resources.getSystem().displayMetrics.density * 40) { + if ((window.decorView.rootWindowInsets?.systemWindowInsetBottom + ?: 0) < Resources.getSystem().displayMetrics.density * 40) { window.navigationBarColor = Color.TRANSPARENT if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { window.navigationBarDividerColor = Color.TRANSPARENT