Skip to content

Commit 61ed0f4

Browse files
authored
Enable edge to edge for modal bottom sheets (#5372)
1 parent 93e37ae commit 61ed0f4

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

app/src/main/kotlin/io/homeassistant/companion/android/util/compose/ModalBottomSheet.kt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import androidx.compose.foundation.layout.Row
88
import androidx.compose.foundation.layout.fillMaxWidth
99
import androidx.compose.foundation.layout.padding
1010
import androidx.compose.foundation.layout.size
11+
import androidx.compose.foundation.layout.windowInsetsPadding
1112
import androidx.compose.foundation.shape.RoundedCornerShape
1213
import androidx.compose.material.MaterialTheme
1314
import androidx.compose.material.Surface
@@ -21,6 +22,7 @@ import androidx.compose.ui.text.style.TextAlign
2122
import androidx.compose.ui.unit.dp
2223
import io.homeassistant.companion.android.R
2324
import io.homeassistant.companion.android.common.R as commonR
25+
import io.homeassistant.companion.android.util.safeBottomWindowInsets
2426

2527
/**
2628
* A Material 3-style modal bottom sheet with an optional handle, for use with a
@@ -36,7 +38,9 @@ fun ModalBottomSheet(
3638
Surface(
3739
shape = RoundedCornerShape(topStart = sheetCornerRadius, topEnd = sheetCornerRadius)
3840
) {
39-
Column {
41+
Column(
42+
modifier = Modifier.windowInsetsPadding(safeBottomWindowInsets())
43+
) {
4044
if (showHandle) {
4145
Row(
4246
modifier = Modifier

app/src/main/res/values-v27/styles.xml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,11 @@
1616
</style>
1717

1818
<style name="ThemeOverlay.HomeAssistant.BottomSheetDialog" parent="ThemeOverlay.HomeAssistant.BottomSheetDialog.Base">
19-
<item name="android:navigationBarColor">@color/colorSurface</item>
19+
<item name="android:navigationBarColor">@android:color/transparent</item>
2020
<item name="android:windowLightNavigationBar">@bool/isLightMode</item>
21+
<item name="enableEdgeToEdge">true</item>
22+
<item name="paddingBottomSystemWindowInsets">false</item>
23+
<item name="paddingLeftSystemWindowInsets">false</item>
24+
<item name="paddingRightSystemWindowInsets">false</item>
2125
</style>
2226
</resources>

0 commit comments

Comments
 (0)