Scaffold: Fix snackbar bottom inset (#9052)

(cherry picked from commit 34a586ce48)
This commit is contained in:
Ivan Iskandar 2023-02-08 21:37:12 +07:00 committed by arkon
parent 4d87ed496c
commit 48546c3db4

View File

@ -240,13 +240,16 @@ private fun ScaffoldLayout(
) )
}.fastMap { it.measure(looseConstraints) } }.fastMap { it.measure(looseConstraints) }
val bottomBarHeight = bottomBarPlaceables.fastMaxBy { it.height }?.height val bottomBarHeight = bottomBarPlaceables
.fastMaxBy { it.height }
?.height
?.takeIf { it != 0 }
val fabOffsetFromBottom = fabPlacement?.let { val fabOffsetFromBottom = fabPlacement?.let {
max(bottomBarHeight ?: 0, bottomInset) + it.height + FabSpacing.roundToPx() max(bottomBarHeight ?: 0, bottomInset) + it.height + FabSpacing.roundToPx()
} }
val snackbarOffsetFromBottom = if (snackbarHeight != 0) { val snackbarOffsetFromBottom = if (snackbarHeight != 0) {
snackbarHeight + (fabOffsetFromBottom ?: bottomBarHeight ?: bottomInset) snackbarHeight + (fabOffsetFromBottom ?: max(bottomBarHeight ?: 0, bottomInset))
} else { } else {
0 0
} }