diff --git a/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/CollapsableScaffold.kt b/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/CollapsableScaffold.kt index 1fe4008bd3..8efdd74860 100644 --- a/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/CollapsableScaffold.kt +++ b/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/CollapsableScaffold.kt @@ -19,9 +19,12 @@ package com.instructure.horizon.horizonui.organisms.scaffolds import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.WindowInsets +import androidx.compose.foundation.layout.WindowInsetsSides +import androidx.compose.foundation.layout.add import androidx.compose.foundation.layout.asPaddingValues import androidx.compose.foundation.layout.ime import androidx.compose.foundation.layout.offset +import androidx.compose.foundation.layout.only import androidx.compose.foundation.layout.padding import androidx.compose.material3.FabPosition import androidx.compose.material3.MaterialTheme @@ -122,7 +125,7 @@ private fun CollapsableHeaderScreenContent( } } ) { - headerContent(statusBarWindowInsets.asPaddingValues()) + headerContent(statusBarWindowInsets.add(navigationBarWindowInsets.only(WindowInsetsSides.Horizontal)).asPaddingValues()) } val headerHeight = max( with(density) { statusBarWindowInsets.getTop(density).toDp() }, @@ -259,7 +262,7 @@ private fun CollapsableScaffoldContent( } } ) { - topBar(statusBarWindowInsets.asPaddingValues()) + topBar(statusBarWindowInsets.add(navigationBarWindowInsets.only(WindowInsetsSides.Horizontal)).asPaddingValues()) } }, bottomBar = { diff --git a/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/EdgeToEdgeScaffold.kt b/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/EdgeToEdgeScaffold.kt index 4c581c7d35..ee4f1a077f 100644 --- a/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/EdgeToEdgeScaffold.kt +++ b/libs/horizon/src/main/java/com/instructure/horizon/horizonui/organisms/scaffolds/EdgeToEdgeScaffold.kt @@ -16,10 +16,8 @@ package com.instructure.horizon.horizonui.organisms.scaffolds import androidx.compose.foundation.layout.PaddingValues -import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.add -import androidx.compose.foundation.layout.ime -import androidx.compose.foundation.layout.union +import androidx.compose.foundation.layout.imePadding import androidx.compose.material3.FabPosition import androidx.compose.material3.Scaffold import androidx.compose.material3.contentColorFor @@ -52,7 +50,7 @@ fun EdgeToEdgeScaffold( navigationBarAlpha = navigationBarAlpha ) { statusBarWindowInsets, navigationBarWindowInsets -> Scaffold( - modifier = modifier, + modifier = modifier.imePadding(), topBar = topBar, bottomBar = bottomBar, snackbarHost = snackbarHost, @@ -60,7 +58,7 @@ fun EdgeToEdgeScaffold( floatingActionButtonPosition = floatingActionButtonPosition, containerColor = containerColor, contentColor = contentColor, - contentWindowInsets = statusBarWindowInsets.union(navigationBarWindowInsets).union(WindowInsets.ime), + contentWindowInsets = statusBarWindowInsets.add(navigationBarWindowInsets), content = content ) } diff --git a/libs/horizon/src/main/java/com/instructure/horizon/util/HorizonEdgeToEdgeHelper.kt b/libs/horizon/src/main/java/com/instructure/horizon/util/HorizonEdgeToEdgeHelper.kt index 66564bcb87..ed1c9bc913 100644 --- a/libs/horizon/src/main/java/com/instructure/horizon/util/HorizonEdgeToEdgeHelper.kt +++ b/libs/horizon/src/main/java/com/instructure/horizon/util/HorizonEdgeToEdgeHelper.kt @@ -32,7 +32,6 @@ import androidx.compose.foundation.layout.only import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.safeDrawing import androidx.compose.foundation.layout.statusBars -import androidx.compose.foundation.layout.union import androidx.compose.foundation.layout.windowInsetsBottomHeight import androidx.compose.foundation.layout.windowInsetsEndWidth import androidx.compose.foundation.layout.windowInsetsStartWidth @@ -60,11 +59,9 @@ fun HorizonEdgeToEdgeSystemBars( content: @Composable (statusBarWindowInsets: WindowInsets, navigationBarWindowInsets: WindowInsets) -> Unit ) { val statusBarWindowsInsets = if (statusBarColor != null) { - WindowInsets.statusBars.union( - WindowInsets.navigationBars.only(WindowInsetsSides.Horizontal) - ) + WindowInsets.statusBars } else { - WindowInsets.navigationBars.only(WindowInsetsSides.Horizontal) + WindowInsets.zeroScreenInsets } val navigationBarWindowsInsets = if (navigationBarColor != null) {