From 4a83829dfd0ed2cfa9b9650bbcece8a5ce2b49a5 Mon Sep 17 00:00:00 2001 From: FooIbar <118464521+FooIbar@users.noreply.github.com> Date: Sat, 30 Sep 2023 19:49:21 +0800 Subject: [PATCH] Fix padding for scrollable --- .../java/com/hippo/ehviewer/ui/login/CookieSignInScreen.kt | 4 ++-- .../java/com/hippo/ehviewer/ui/login/SelectSiteScreen.kt | 6 ++---- .../main/java/com/hippo/ehviewer/ui/settings/AboutScreen.kt | 4 +--- .../java/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt | 5 +---- .../java/com/hippo/ehviewer/ui/settings/DownloadScreen.kt | 5 +---- .../main/java/com/hippo/ehviewer/ui/settings/EhScreen.kt | 5 +---- .../java/com/hippo/ehviewer/ui/settings/MyTagsScreen.kt | 2 +- .../java/com/hippo/ehviewer/ui/settings/UConfigScreen.kt | 2 +- .../java/com/hippo/ehviewer/ui/webview/WebViewScreen.kt | 2 +- 9 files changed, 11 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/ui/login/CookieSignInScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/login/CookieSignInScreen.kt index cd9f92c59..81519e0d6 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/login/CookieSignInScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/login/CookieSignInScreen.kt @@ -257,7 +257,7 @@ fun CookieSignInScene(windowSizeClass: WindowSizeClass) { when (windowSizeClass.widthSizeClass) { WindowWidthSizeClass.Compact, WindowWidthSizeClass.Medium -> { Column( - modifier = Modifier.padding(dimensionResource(id = R.dimen.keyline_margin)).padding(padding).fillMaxSize().verticalScroll(rememberScrollState()), + modifier = Modifier.fillMaxSize().verticalScroll(rememberScrollState()).padding(padding).padding(dimensionResource(id = R.dimen.keyline_margin)), horizontalAlignment = Alignment.CenterHorizontally, ) { Icon( @@ -284,7 +284,7 @@ fun CookieSignInScene(windowSizeClass: WindowSizeClass) { } WindowWidthSizeClass.Expanded -> { Row( - modifier = Modifier.padding(dimensionResource(id = R.dimen.keyline_margin)).padding(padding).verticalScroll(rememberScrollState()), + modifier = Modifier.fillMaxSize().verticalScroll(rememberScrollState()).padding(padding).padding(dimensionResource(id = R.dimen.keyline_margin)), verticalAlignment = Alignment.CenterVertically, ) { Column( diff --git a/app/src/main/java/com/hippo/ehviewer/ui/login/SelectSiteScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/login/SelectSiteScreen.kt index 72051539a..5189f037d 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/login/SelectSiteScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/login/SelectSiteScreen.kt @@ -5,12 +5,10 @@ import androidx.activity.compose.BackHandler import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.WindowInsets -import androidx.compose.foundation.layout.asPaddingValues import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.systemBars +import androidx.compose.foundation.layout.systemBarsPadding import androidx.compose.material3.Button import androidx.compose.material3.MaterialTheme import androidx.compose.material3.SegmentedButton @@ -45,7 +43,7 @@ fun SelectSiteScreen() { } Column( - modifier = Modifier.padding(WindowInsets.systemBars.asPaddingValues()).padding(horizontal = dimensionResource(R.dimen.keyline_margin)).padding(top = dimensionResource(R.dimen.keyline_margin)).fillMaxSize(), + modifier = Modifier.systemBarsPadding().padding(horizontal = dimensionResource(R.dimen.keyline_margin)).padding(top = dimensionResource(R.dimen.keyline_margin)).fillMaxSize(), horizontalAlignment = Alignment.CenterHorizontally, ) { Text( diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/AboutScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/AboutScreen.kt index 8ceb72a1e..2b64ec206 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/AboutScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/AboutScreen.kt @@ -5,7 +5,6 @@ import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons @@ -84,7 +83,7 @@ fun AboutScreen() { }, snackbarHost = { SnackbarHost(snackbarHostState) }, ) { paddingValues -> - Column(modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState())) { + Column(modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState()).padding(paddingValues)) { Preference( title = stringResource(id = R.string.settings_about_declaration), summary = stringResource(id = R.string.settings_about_declaration_summary), @@ -127,7 +126,6 @@ fun AboutScreen() { launchSnackBar(ExceptionUtils.getReadableString(it)) } } - Spacer(modifier = Modifier.size(paddingValues.calculateBottomPadding())) } } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt index f7a18d2be..ed4f71299 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/AdvancedScreen.kt @@ -7,9 +7,7 @@ import android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS import android.provider.Settings.ACTION_APP_OPEN_BY_DEFAULT_SETTINGS import androidx.activity.result.contract.ActivityResultContracts import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons @@ -70,7 +68,7 @@ fun AdvancedScreen() { }, snackbarHost = { SnackbarHost(snackbarHostState) }, ) { paddingValues -> - Column(modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState())) { + Column(modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState()).padding(paddingValues)) { SwitchPreference( title = stringResource(id = R.string.settings_advanced_save_parse_error_body), summary = stringResource(id = R.string.settings_advanced_save_parse_error_body_summary), @@ -225,7 +223,6 @@ fun AdvancedScreen() { } } } - Spacer(modifier = Modifier.size(paddingValues.calculateBottomPadding())) } } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/DownloadScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/DownloadScreen.kt index b0ed1b638..3476a2d44 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/DownloadScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/DownloadScreen.kt @@ -5,9 +5,7 @@ import android.content.Intent.FLAG_GRANT_WRITE_URI_PERMISSION import androidx.activity.compose.rememberLauncherForActivityResult import androidx.activity.result.contract.ActivityResultContracts import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons @@ -74,7 +72,7 @@ fun DownloadScreen() { }, snackbarHost = { SnackbarHost(snackbarHostState) }, ) { paddingValues -> - Column(modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState())) { + Column(modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState()).padding(paddingValues)) { var downloadLocationState by ::downloadLocation.observed val cannotGetDownloadLocation = stringResource(id = R.string.settings_download_cant_get_download_location) val selectDownloadDirLauncher = rememberLauncherForActivityResult(ActivityResultContracts.OpenDocumentTree()) { treeUri -> @@ -232,7 +230,6 @@ fun DownloadScreen() { it.printStackTrace() } } - Spacer(modifier = Modifier.size(paddingValues.calculateBottomPadding())) } } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/EhScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/EhScreen.kt index b29efdf84..ade09eed8 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/EhScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/EhScreen.kt @@ -4,9 +4,7 @@ import android.content.DialogInterface import android.os.Build import androidx.compose.animation.AnimatedVisibility import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.padding -import androidx.compose.foundation.layout.size import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material.icons.Icons @@ -90,7 +88,7 @@ fun EhScreen() { ) { paddingValues -> val touristMode = stringResource(id = R.string.settings_eh_identity_cookies_tourist) val copiedToClipboard = stringResource(id = R.string.copied_to_clipboard) - Column(modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState())) { + Column(modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection).verticalScroll(rememberScrollState()).padding(paddingValues)) { Preference( title = stringResource(id = R.string.account_name), summary = Settings.displayName ?: touristMode, @@ -343,7 +341,6 @@ fun EhScreen() { ) } } - Spacer(modifier = Modifier.size(paddingValues.calculateBottomPadding())) } } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/MyTagsScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/MyTagsScreen.kt index 363774031..3a0d3116c 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/MyTagsScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/MyTagsScreen.kt @@ -38,7 +38,7 @@ fun MyTagsScreen() { val state = rememberWebViewState(url = url) WebView( state = state, - modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).fillMaxSize(), + modifier = Modifier.padding(paddingValues).fillMaxSize(), onCreated = { it.setDefaultSettings() }, diff --git a/app/src/main/java/com/hippo/ehviewer/ui/settings/UConfigScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/settings/UConfigScreen.kt index d21fb8a14..7288369bf 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/settings/UConfigScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/settings/UConfigScreen.kt @@ -62,7 +62,7 @@ fun UConfigScreen() { val state = rememberWebViewState(url = url) WebView( state = state, - modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).fillMaxSize(), + modifier = Modifier.padding(paddingValues).fillMaxSize(), onCreated = { it.setDefaultSettings() }, diff --git a/app/src/main/java/com/hippo/ehviewer/ui/webview/WebViewScreen.kt b/app/src/main/java/com/hippo/ehviewer/ui/webview/WebViewScreen.kt index 9a83c4ec0..f99686352 100644 --- a/app/src/main/java/com/hippo/ehviewer/ui/webview/WebViewScreen.kt +++ b/app/src/main/java/com/hippo/ehviewer/ui/webview/WebViewScreen.kt @@ -34,7 +34,7 @@ fun WebViewScreen(url: String, onNavigateUp: () -> Unit) { ) { paddingValues -> WebView( state = state, - modifier = Modifier.padding(top = paddingValues.calculateTopPadding()).fillMaxSize(), + modifier = Modifier.padding(paddingValues).fillMaxSize(), onCreated = { it.setDefaultSettings() }, ) DisposableEffect(Unit) {