@@ -20,9 +20,17 @@ import androidx.compose.foundation.Image
20
20
import androidx.compose.foundation.background
21
21
import androidx.compose.foundation.layout.Arrangement
22
22
import androidx.compose.foundation.layout.Column
23
+ import androidx.compose.foundation.layout.PaddingValues
23
24
import androidx.compose.foundation.layout.Row
25
+ import androidx.compose.foundation.layout.WindowInsets
26
+ import androidx.compose.foundation.layout.WindowInsetsSides
27
+ import androidx.compose.foundation.layout.asPaddingValues
28
+ import androidx.compose.foundation.layout.calculateEndPadding
29
+ import androidx.compose.foundation.layout.calculateStartPadding
24
30
import androidx.compose.foundation.layout.fillMaxWidth
31
+ import androidx.compose.foundation.layout.only
25
32
import androidx.compose.foundation.layout.padding
33
+ import androidx.compose.foundation.layout.safeDrawing
26
34
import androidx.compose.foundation.layout.size
27
35
import androidx.compose.foundation.lazy.LazyColumn
28
36
import androidx.compose.foundation.lazy.items
@@ -42,9 +50,13 @@ import androidx.compose.runtime.Composable
42
50
import androidx.compose.ui.Alignment
43
51
import androidx.compose.ui.Modifier
44
52
import androidx.compose.ui.draw.clip
53
+ import androidx.compose.ui.layout.Layout
54
+ import androidx.compose.ui.platform.LocalLayoutDirection
45
55
import androidx.compose.ui.res.painterResource
46
56
import androidx.compose.ui.res.stringResource
47
57
import androidx.compose.ui.text.style.TextOverflow
58
+ import androidx.compose.ui.unit.Dp
59
+ import androidx.compose.ui.unit.LayoutDirection
48
60
import androidx.compose.ui.unit.dp
49
61
import com.example.reply.R
50
62
import com.example.reply.data.Email
@@ -55,7 +67,12 @@ fun ReplyListPane(
55
67
onEmailClick : (Email ) -> Unit ,
56
68
modifier : Modifier = Modifier
57
69
) {
58
- LazyColumn (modifier = modifier.fillMaxWidth()) {
70
+
71
+ LazyColumn (
72
+ modifier = modifier.fillMaxWidth(),
73
+ contentPadding = WindowInsets .safeDrawing.only(
74
+ WindowInsetsSides .Horizontal + WindowInsetsSides .Top ).asPaddingValues()
75
+ ) {
59
76
item {
60
77
ReplySearchBar (modifier = Modifier .fillMaxWidth())
61
78
}
@@ -73,7 +90,14 @@ fun ReplyDetailPane(
73
90
email : Email ,
74
91
modifier : Modifier = Modifier
75
92
) {
76
- LazyColumn (modifier = modifier.fillMaxWidth()) {
93
+
94
+ val layoutDirection = LocalLayoutDirection .current
95
+
96
+ LazyColumn (
97
+ modifier = modifier.fillMaxWidth(),
98
+ contentPadding = WindowInsets .safeDrawing.only(
99
+ WindowInsetsSides .Horizontal + WindowInsetsSides .Top ).asPaddingValues()
100
+ ) {
77
101
item {
78
102
ReplyEmailThreadItem (email)
79
103
}
@@ -156,13 +180,13 @@ fun ReplyEmailThreadItem(
156
180
modifier : Modifier = Modifier
157
181
) {
158
182
Card (
159
- modifier = modifier.padding(horizontal = 16 .dp, vertical = 4 .dp ),
183
+ modifier = modifier.padding(horizontal = 16 .dp),
160
184
colors = CardDefaults .cardColors(containerColor = MaterialTheme .colorScheme.surface)
161
185
) {
162
186
Column (
163
187
modifier = Modifier
164
188
.fillMaxWidth()
165
- .padding(20 .dp)
189
+ .padding(horizontal = 20 .dp)
166
190
) {
167
191
Row (modifier = Modifier .fillMaxWidth()) {
168
192
ReplyProfileImage (
@@ -264,7 +288,7 @@ fun ReplySearchBar(modifier: Modifier = Modifier) {
264
288
Row (
265
289
modifier = modifier
266
290
.fillMaxWidth()
267
- .padding(16 .dp)
291
+ .padding(horizontal = 16 .dp)
268
292
.background(MaterialTheme .colorScheme.surface, CircleShape ),
269
293
verticalAlignment = Alignment .CenterVertically
270
294
) {
0 commit comments