Fix AppScaffold content window insets.

This commit is contained in:
jeffrey-signal
2025-10-27 19:43:23 -04:00
parent 6d843a9725
commit ab781cab8a
5 changed files with 12 additions and 10 deletions

View File

@@ -30,6 +30,7 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.BoxWithConstraints
import androidx.compose.foundation.layout.BoxWithConstraintsScope
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.displayCutoutPadding
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
@@ -473,6 +474,7 @@ class MainActivity : PassphraseRequiredActivity(), VoiceNoteMediaControllerOwner
navigator = wrappedNavigator,
modifier = chatNavGraphState.writeContentToGraphicsLayer(),
paneExpansionState = paneExpansionState,
contentWindowInsets = WindowInsets(),
bottomNavContent = {
if (isNavigationBarVisible) {
Column(

View File

@@ -31,7 +31,6 @@ fun ScreenTitlePane(
.padding(
start = if (windowSizeClass.isExtended()) 80.dp else 20.dp,
end = 20.dp,
top = 12.dp,
bottom = 12.dp
)
)

View File

@@ -364,9 +364,7 @@ private fun NewConversationRecipientPicker(
findByUsername = callbacks,
findByPhoneNumber = callbacks
),
modifier = modifier
.fillMaxSize()
.padding(vertical = 12.dp)
modifier = modifier.fillMaxSize()
)
}

View File

@@ -220,9 +220,7 @@ private fun CreateGroupRecipientPicker(
findByUsername = callbacks,
findByPhoneNumber = callbacks
),
modifier = modifier
.fillMaxSize()
.padding(vertical = 12.dp)
modifier = modifier.fillMaxSize()
)
AnimatedContent(

View File

@@ -22,6 +22,7 @@ import androidx.compose.foundation.layout.size
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.LocalMinimumInteractiveComponentSize
import androidx.compose.material3.Scaffold
import androidx.compose.material3.ScaffoldDefaults
import androidx.compose.material3.Text
import androidx.compose.material3.adaptive.ExperimentalMaterial3AdaptiveApi
import androidx.compose.material3.adaptive.currentWindowAdaptiveInfo
@@ -229,6 +230,7 @@ fun AppScaffold(
paneExpansionState: PaneExpansionState = rememberPaneExpansionState(),
paneExpansionDragHandle: (@Composable ThreePaneScaffoldScope.(PaneExpansionState) -> Unit)? = null,
snackbarHost: @Composable () -> Unit = {},
contentWindowInsets: WindowInsets = ScaffoldDefaults.contentWindowInsets,
animatorFactory: AppScaffoldAnimationStateFactory = AppScaffoldAnimationStateFactory.Default
) {
val isForcedCompact = WindowSizeClass.checkForcedCompact()
@@ -241,6 +243,7 @@ fun AppScaffold(
navRailContent = navRailContent,
bottomNavContent = bottomNavContent,
windowSizeClass = windowSizeClass,
contentWindowInsets = contentWindowInsets,
modifier = modifier
)
@@ -252,7 +255,7 @@ fun AppScaffold(
Scaffold(
containerColor = Color.Transparent,
contentWindowInsets = WindowInsets(),
contentWindowInsets = contentWindowInsets,
topBar = topBarContent,
snackbarHost = snackbarHost,
modifier = modifier
@@ -296,7 +299,8 @@ fun AppScaffold(
listContent = secondaryContent,
navRailContent = navRailContent,
bottomNavContent = bottomNavContent,
windowSizeClass = windowSizeClass
windowSizeClass = windowSizeClass,
contentWindowInsets = WindowInsets() // parent scaffold already applies the necessary insets
)
}
}
@@ -352,12 +356,13 @@ private fun ListAndNavigation(
bottomNavContent: @Composable () -> Unit,
snackbarHost: @Composable () -> Unit = {},
windowSizeClass: WindowSizeClass,
contentWindowInsets: WindowInsets,
modifier: Modifier = Modifier
) {
Scaffold(
containerColor = Color.Transparent,
topBar = topBarContent,
contentWindowInsets = WindowInsets(),
contentWindowInsets = contentWindowInsets,
snackbarHost = snackbarHost,
modifier = modifier
) { paddingValues ->