Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6f9bec89 authored by Ellen Poe's avatar Ellen Poe
Browse files

Merge branch 'ellenhp/offline_area_snackbar_fix' into 'main'

Correctly show snackbars in bottom sheet scaffolds

Closes #26

See merge request e/os/cardinal!43
parents 34ae7433 e8bc495f
Loading
Loading
Loading
Loading
Loading
+4 −1
Original line number Original line Diff line number Diff line
@@ -25,11 +25,14 @@ import androidx.compose.foundation.layout.BoxWithConstraints
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.imePadding
import androidx.compose.foundation.layout.imePadding
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.requiredHeightIn
import androidx.compose.foundation.layout.requiredHeightIn
import androidx.compose.foundation.layout.safeDrawing
import androidx.compose.foundation.layout.windowInsetsPadding
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.FabPosition
import androidx.compose.material3.FabPosition
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.MaterialTheme
@@ -367,7 +370,7 @@ fun BottomSheetScaffold(
                    }
                    }
                },
                },
                snackbarHost = {
                snackbarHost = {
                    Box {
                    Box(modifier = Modifier.fillMaxSize().windowInsetsPadding(WindowInsets.safeDrawing)) {
                        snackbarHost(scaffoldState.snackbarHostState)
                        snackbarHost(scaffoldState.snackbarHostState)
                    }
                    }
                },
                },
+3 −4
Original line number Original line Diff line number Diff line
@@ -816,7 +816,6 @@ private fun OfflineAreasRoute(
        }
        }
    }
    }
    val viewModel: OfflineAreasViewModel = hiltViewModel()
    val viewModel: OfflineAreasViewModel = hiltViewModel()
    val snackBarHostState = remember { SnackbarHostState() }


    // Track the current viewport reactively
    // Track the current viewport reactively
    var currentViewport by remember { mutableStateOf(state.cameraState.projection?.queryVisibleRegion()) }
    var currentViewport by remember { mutableStateOf(state.cameraState.projection?.queryVisibleRegion()) }
@@ -835,7 +834,7 @@ private fun OfflineAreasRoute(
                    state.fabHeight = it
                    state.fabHeight = it
                }
                }
            },
            },
            content = {
            content = { snackBarHostState ->
                OfflineAreasScreen(
                OfflineAreasScreen(
                    currentViewport = visibleRegion,
                    currentViewport = visibleRegion,
                    currentZoom = state.cameraState.position.zoom,
                    currentZoom = state.cameraState.position.zoom,
@@ -1305,7 +1304,7 @@ private fun HomeScreenComposable(
fun CardinalAppScaffold(
fun CardinalAppScaffold(
    scaffoldState: BottomSheetScaffoldState,
    scaffoldState: BottomSheetScaffoldState,
    peekHeight: Dp,
    peekHeight: Dp,
    content: @Composable () -> Unit,
    content: @Composable (SnackbarHostState) -> Unit,
    fabHeightCallback: (Dp) -> Unit,
    fabHeightCallback: (Dp) -> Unit,
    showToolbar: Boolean = true,
    showToolbar: Boolean = true,
) {
) {
@@ -1337,7 +1336,7 @@ fun CardinalAppScaffold(
                    ) {
                    ) {
                        BottomSheetDefaults.DragHandle()
                        BottomSheetDefaults.DragHandle()
                    }
                    }
                    content()
                    content(snackBarHostState)
                }
                }
                Spacer(modifier = Modifier.height(bottomInset))
                Spacer(modifier = Modifier.height(bottomInset))
            },
            },