Skip to content

Commit d04e003

Browse files
committed
Fixed e2e issues
Signed-off-by: Arnau Mora <[email protected]>
1 parent 861d732 commit d04e003

File tree

5 files changed

+37
-8
lines changed

5 files changed

+37
-8
lines changed

app/src/main/kotlin/at/bitfire/davdroid/ui/AboutActivity.kt

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,11 @@ import androidx.compose.foundation.ExperimentalFoundationApi
1313
import androidx.compose.foundation.Image
1414
import androidx.compose.foundation.layout.Column
1515
import androidx.compose.foundation.layout.PaddingValues
16+
import androidx.compose.foundation.layout.WindowInsets
17+
import androidx.compose.foundation.layout.asPaddingValues
1618
import androidx.compose.foundation.layout.fillMaxSize
1719
import androidx.compose.foundation.layout.fillMaxWidth
20+
import androidx.compose.foundation.layout.navigationBars
1821
import androidx.compose.foundation.layout.padding
1922
import androidx.compose.foundation.layout.size
2023
import androidx.compose.foundation.lazy.LazyColumn
@@ -54,6 +57,7 @@ import at.bitfire.davdroid.Constants
5457
import at.bitfire.davdroid.Constants.withStatParams
5558
import at.bitfire.davdroid.R
5659
import at.bitfire.davdroid.ui.composable.PixelBoxes
60+
import at.bitfire.davdroid.ui.edgetoedge.NavigationBarSpacer
5761
import com.mikepenz.aboutlibraries.Libs
5862
import com.mikepenz.aboutlibraries.ui.compose.m3.LibrariesContainer
5963
import com.mikepenz.aboutlibraries.util.withJson
@@ -68,10 +72,6 @@ import kotlinx.coroutines.Dispatchers
6872
import kotlinx.coroutines.launch
6973
import org.json.JSONObject
7074
import java.text.Collator
71-
import java.time.LocalDateTime
72-
import java.time.ZoneOffset
73-
import java.time.format.DateTimeFormatter
74-
import java.time.format.FormatStyle
7575
import java.util.LinkedList
7676
import java.util.Locale
7777
import java.util.Optional
@@ -98,6 +98,7 @@ class AboutActivity: AppCompatActivity() {
9898
val uriHandler = LocalUriHandler.current
9999

100100
Scaffold(
101+
contentWindowInsets = WindowInsets(0.dp),
101102
topBar = {
102103
TopAppBar(
103104
navigationIcon = {
@@ -172,14 +173,17 @@ class AboutActivity: AppCompatActivity() {
172173
TranslatorsGallery(translations.value)
173174
}
174175

175-
2 -> LibrariesContainer(Modifier.fillMaxSize(),
176+
2 -> LibrariesContainer(
177+
modifier = Modifier.fillMaxSize(),
178+
contentPadding = WindowInsets.navigationBars.asPaddingValues(),
176179
itemContentPadding = PaddingValues(horizontal = 8.dp, vertical = 8.dp),
177180
itemSpacing = 8.dp,
178181
librariesBlock = { ctx ->
179182
Libs.Builder()
180183
.withJson(ctx, R.raw.aboutlibraries)
181184
.build()
182-
})
185+
}
186+
)
183187
}
184188
}
185189
}
@@ -310,6 +314,8 @@ fun AboutApp(licenseInfoProvider: AboutActivity.AppLicenseInfoProvider? = null)
310314
)
311315

312316
licenseInfoProvider?.LicenseInfo()
317+
318+
NavigationBarSpacer()
313319
}
314320
}
315321

@@ -330,7 +336,7 @@ fun TranslatorsGallery(
330336
translations: List<AboutActivity.Model.Translation>
331337
) {
332338
val collator = Collator.getInstance()
333-
LazyColumn(Modifier.padding(8.dp)) {
339+
LazyColumn(Modifier.padding(horizontal = 8.dp)) {
334340
items(translations) { translation ->
335341
Text(
336342
translation.language,
@@ -345,6 +351,9 @@ fun TranslatorsGallery(
345351
modifier = Modifier.padding(bottom = 16.dp)
346352
)
347353
}
354+
item {
355+
NavigationBarSpacer()
356+
}
348357
}
349358
}
350359

app/src/main/kotlin/at/bitfire/davdroid/ui/account/AccountSettingsScreen.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import android.security.KeyChain
1010
import androidx.annotation.StringRes
1111
import androidx.compose.foundation.layout.Box
1212
import androidx.compose.foundation.layout.Column
13+
import androidx.compose.foundation.layout.WindowInsets
1314
import androidx.compose.foundation.layout.padding
1415
import androidx.compose.foundation.rememberScrollState
1516
import androidx.compose.foundation.verticalScroll
@@ -63,6 +64,7 @@ import at.bitfire.davdroid.ui.composable.MultipleChoiceInputDialog
6364
import at.bitfire.davdroid.ui.composable.Setting
6465
import at.bitfire.davdroid.ui.composable.SettingsHeader
6566
import at.bitfire.davdroid.ui.composable.SwitchSetting
67+
import at.bitfire.davdroid.ui.edgetoedge.NavigationBarSpacer
6668
import at.bitfire.davdroid.util.PermissionUtils
6769
import at.bitfire.vcard4android.GroupMethod
6870
import kotlinx.coroutines.launch
@@ -173,6 +175,7 @@ fun AccountSettingsScreen(
173175
val snackbarHostState = remember { SnackbarHostState() }
174176

175177
Scaffold(
178+
contentWindowInsets = WindowInsets(0),
176179
topBar = {
177180
TopAppBar(
178181
navigationIcon = {
@@ -336,6 +339,8 @@ fun AccountSettings_FromModel(
336339
contactGroupMethod = contactGroupMethod,
337340
onUpdateContactGroupMethod = onUpdateContactGroupMethod
338341
)
342+
343+
NavigationBarSpacer()
339344
}
340345
}
341346

app/src/main/kotlin/at/bitfire/davdroid/ui/edgetoedge/EdgeToEdgeUtils.kt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,10 @@
55
package at.bitfire.davdroid.ui.edgetoedge
66

77
import android.content.res.Configuration.ORIENTATION_LANDSCAPE
8+
import androidx.compose.foundation.layout.Spacer
9+
import androidx.compose.foundation.layout.navigationBarsPadding
810
import androidx.compose.runtime.Composable
11+
import androidx.compose.ui.Modifier
912
import androidx.compose.ui.platform.LocalConfiguration
1013

1114
@Composable
@@ -40,3 +43,8 @@ fun <T> withOrientation(landscape: T, portrait: T): T {
4043
portrait
4144
}
4245
}
46+
47+
@Composable
48+
fun NavigationBarSpacer() {
49+
Spacer(Modifier.navigationBarsPadding())
50+
}

app/src/main/kotlin/at/bitfire/davdroid/ui/intro/IntroScreen.kt

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import androidx.compose.foundation.layout.only
2222
import androidx.compose.foundation.layout.padding
2323
import androidx.compose.foundation.layout.safeDrawing
2424
import androidx.compose.foundation.layout.size
25+
import androidx.compose.foundation.layout.statusBars
2526
import androidx.compose.foundation.layout.width
2627
import androidx.compose.foundation.layout.windowInsetsPadding
2728
import androidx.compose.foundation.pager.HorizontalPager
@@ -56,6 +57,7 @@ import androidx.compose.ui.unit.dp
5657
import at.bitfire.davdroid.R
5758
import at.bitfire.davdroid.ui.AppTheme
5859
import at.bitfire.davdroid.ui.M3ColorScheme
60+
import at.bitfire.davdroid.ui.edgetoedge.withOrientation
5961
import kotlinx.coroutines.launch
6062

6163
@Composable
@@ -109,7 +111,10 @@ fun IntroScreen(
109111
}
110112
}
111113
},
112-
contentWindowInsets = WindowInsets(0.dp)
114+
contentWindowInsets = withOrientation(
115+
landscape = WindowInsets(0.dp),
116+
portrait = WindowInsets.statusBars,
117+
)
113118
) { paddingValues ->
114119
Column(modifier = Modifier
115120
.fillMaxSize()

app/src/main/kotlin/at/bitfire/davdroid/ui/webdav/AddWebdavMountScreen.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ package at.bitfire.davdroid.ui.webdav
77
import androidx.compose.foundation.layout.Column
88
import androidx.compose.foundation.layout.fillMaxSize
99
import androidx.compose.foundation.layout.fillMaxWidth
10+
import androidx.compose.foundation.layout.imePadding
1011
import androidx.compose.foundation.layout.padding
1112
import androidx.compose.foundation.rememberScrollState
1213
import androidx.compose.foundation.text.KeyboardActions
@@ -139,6 +140,7 @@ fun AddWebDavMountScreen(
139140
Column(
140141
modifier = Modifier
141142
.fillMaxSize()
143+
.imePadding()
142144
.padding(paddingValues)
143145
.verticalScroll(rememberScrollState())
144146
) {

0 commit comments

Comments
 (0)