diff --git a/app/src/main/java/app/codeg/android/feature/main/MainShell.kt b/app/src/main/java/app/codeg/android/feature/main/MainShell.kt index 8374e74..f788d9b 100644 --- a/app/src/main/java/app/codeg/android/feature/main/MainShell.kt +++ b/app/src/main/java/app/codeg/android/feature/main/MainShell.kt @@ -9,6 +9,7 @@ import androidx.compose.animation.fadeOut import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.navigationBarsPadding import androidx.compose.foundation.layout.padding import androidx.compose.material.icons.Icons import androidx.compose.material.icons.outlined.Bolt @@ -400,6 +401,7 @@ private fun CodegBottomBar( // what actually makes the tabs continuous with the content above them. containerColor = Color.Transparent, tonalElevation = 0.dp, + modifier = Modifier.navigationBarsPadding(), ) { HomeTab.entries.forEach { tab -> val selected = currentRoute == tab.route diff --git a/app/src/main/java/app/codeg/android/feature/sessiondetail/SessionDetailScreen.kt b/app/src/main/java/app/codeg/android/feature/sessiondetail/SessionDetailScreen.kt index d3df5dd..64d79dd 100644 --- a/app/src/main/java/app/codeg/android/feature/sessiondetail/SessionDetailScreen.kt +++ b/app/src/main/java/app/codeg/android/feature/sessiondetail/SessionDetailScreen.kt @@ -24,6 +24,7 @@ import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.imePadding +import androidx.compose.foundation.layout.navigationBarsPadding import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.lazy.LazyColumn @@ -222,7 +223,10 @@ fun SessionDetailScreen( ) }, bottomBar = { - Column(Modifier.imePadding()) { + // The activity draws edge-to-edge. Consume both the IME and the + // three-button/navigation gesture inset so the composer never sits + // underneath system navigation controls. + Column(Modifier.imePadding().navigationBarsPadding()) { ui.pendingPermission?.let { p -> PermissionRequestCard( parsed = p.parsed,