Hide Android system navigation

This commit is contained in:
2026-04-23 09:21:30 -05:00
parent 2cbd0f2ca3
commit 9e0fbcaa0d
7 changed files with 35 additions and 8 deletions
@@ -5,6 +5,8 @@ import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.material3.Surface
import androidx.core.view.WindowInsetsCompat
import androidx.core.view.WindowInsetsControllerCompat
import androidx.lifecycle.viewmodel.compose.viewModel
import net.linkedcorp.linkedsign.ui.LinkedSignApp
import net.linkedcorp.linkedsign.ui.MainViewModel
@@ -14,6 +16,7 @@ class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
hideSystemNavigation()
setContent {
LinkedSignTheme {
@@ -28,4 +31,21 @@ class MainActivity : ComponentActivity() {
}
}
}
override fun onResume() {
super.onResume()
hideSystemNavigation()
}
override fun onWindowFocusChanged(hasFocus: Boolean) {
super.onWindowFocusChanged(hasFocus)
if (hasFocus) hideSystemNavigation()
}
private fun hideSystemNavigation() {
WindowInsetsControllerCompat(window, window.decorView).apply {
systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
hide(WindowInsetsCompat.Type.navigationBars())
}
}
}
@@ -29,6 +29,7 @@ import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.fillMaxHeight
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
@@ -268,9 +269,10 @@ fun LinkedSignApp(viewModel: MainViewModel, appContext: Context, activity: Compo
bottomBar = {
if (state.authenticated) {
NavigationBar(
modifier = Modifier.height(44.dp),
modifier = Modifier.height(52.dp),
containerColor = Color.White,
tonalElevation = 0.dp
tonalElevation = 0.dp,
windowInsets = WindowInsets(left = 0.dp, top = 0.dp, right = 0.dp, bottom = 0.dp)
) {
val tabs = listOf(
AppTab.Documents to Icons.Outlined.Description,