Skip to content

Commit 3073372

Browse files
committed
remove excess padding at bottom of last list item due to handling task bar inset
1 parent cc27fac commit 3073372

File tree

1 file changed

+24
-1
lines changed

1 file changed

+24
-1
lines changed

AdaptiveUiCodelab/app/src/main/java/com/example/reply/ui/ReplyListContent.kt

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,14 @@ import androidx.compose.foundation.Image
2020
import androidx.compose.foundation.background
2121
import androidx.compose.foundation.layout.Arrangement
2222
import androidx.compose.foundation.layout.Column
23+
import androidx.compose.foundation.layout.PaddingValues
2324
import androidx.compose.foundation.layout.Row
2425
import androidx.compose.foundation.layout.WindowInsets
2526
import androidx.compose.foundation.layout.asPaddingValues
27+
import androidx.compose.foundation.layout.calculateEndPadding
28+
import androidx.compose.foundation.layout.calculateStartPadding
2629
import androidx.compose.foundation.layout.fillMaxWidth
2730
import androidx.compose.foundation.layout.padding
28-
import androidx.compose.foundation.layout.safeContent
2931
import androidx.compose.foundation.layout.safeDrawing
3032
import androidx.compose.foundation.layout.size
3133
import androidx.compose.foundation.lazy.LazyColumn
@@ -46,9 +48,13 @@ import androidx.compose.runtime.Composable
4648
import androidx.compose.ui.Alignment
4749
import androidx.compose.ui.Modifier
4850
import androidx.compose.ui.draw.clip
51+
import androidx.compose.ui.layout.Layout
52+
import androidx.compose.ui.platform.LocalLayoutDirection
4953
import androidx.compose.ui.res.painterResource
5054
import androidx.compose.ui.res.stringResource
5155
import androidx.compose.ui.text.style.TextOverflow
56+
import androidx.compose.ui.unit.Dp
57+
import androidx.compose.ui.unit.LayoutDirection
5258
import androidx.compose.ui.unit.dp
5359
import com.example.reply.R
5460
import com.example.reply.data.Email
@@ -59,9 +65,12 @@ fun ReplyListPane(
5965
onEmailClick: (Email) -> Unit,
6066
modifier: Modifier = Modifier
6167
) {
68+
val layoutDirection = LocalLayoutDirection.current
69+
6270
LazyColumn(
6371
modifier = modifier.fillMaxWidth(),
6472
contentPadding = WindowInsets.safeDrawing.asPaddingValues()
73+
.copy(layoutDirection, bottom = 0.dp)
6574
) {
6675
item {
6776
ReplySearchBar(modifier = Modifier.fillMaxWidth())
@@ -301,3 +310,17 @@ fun ReplySearchBar(modifier: Modifier = Modifier) {
301310
)
302311
}
303312
}
313+
314+
private fun PaddingValues.copy(
315+
layoutDirection: LayoutDirection,
316+
start: Dp? = null,
317+
top: Dp? = null,
318+
end: Dp? = null,
319+
bottom: Dp? = null,
320+
) = PaddingValues(
321+
start = start ?: calculateStartPadding(layoutDirection),
322+
top = top ?: calculateTopPadding(),
323+
end = end ?: calculateEndPadding(layoutDirection),
324+
bottom = bottom ?: calculateBottomPadding(),
325+
)
326+

0 commit comments

Comments
 (0)