Skip to content

Commit 242eac8

Browse files
committed
try fix settings page ui under different locale
at least I tried...
1 parent 8528869 commit 242eac8

File tree

2 files changed

+20
-22
lines changed

2 files changed

+20
-22
lines changed

app/src/main/kotlin/day/vitayuzu/neodb/ui/page/settings/SettingsPage.kt

Lines changed: 19 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import androidx.compose.foundation.layout.IntrinsicSize
1414
import androidx.compose.foundation.layout.Row
1515
import androidx.compose.foundation.layout.Spacer
1616
import androidx.compose.foundation.layout.fillMaxHeight
17-
import androidx.compose.foundation.layout.fillMaxSize
1817
import androidx.compose.foundation.layout.fillMaxWidth
1918
import androidx.compose.foundation.layout.height
2019
import androidx.compose.foundation.layout.padding
@@ -71,28 +70,27 @@ fun SettingsPage(
7170

7271
val context = LocalContext.current
7372

74-
Surface(modifier = modifier.fillMaxSize()) {
75-
Column(modifier = Modifier.padding(horizontal = 16.dp)) {
76-
if (uiState.isLogin) { // logged in
77-
UserProfilePart(
78-
avatar = uiState.avatar,
79-
username = uiState.username,
80-
fediAccount = uiState.fediAccount,
81-
modifier = Modifier.fillMaxWidth().padding(horizontal = 16.dp),
82-
logOut = viewModel::logout,
83-
) {
84-
try {
85-
val intent = CustomTabsIntent.Builder().build() // TODO: warmup
86-
intent.launchUrl(context, uiState.url.toUri())
87-
} catch (e: Exception) {
88-
Log.e("SettingsPage", "Failed to open ${uiState.url}", e)
89-
}
73+
// WORKAROUND: Only add 8dp padding to UserProfilePart to avoid left button wrapping in English locale
74+
Column(modifier = modifier.padding(horizontal = 8.dp)) {
75+
if (uiState.isLogin) { // logged in
76+
UserProfilePart(
77+
avatar = uiState.avatar,
78+
username = uiState.username,
79+
fediAccount = uiState.fediAccount,
80+
modifier = Modifier.fillMaxWidth(),
81+
logOut = viewModel::logout,
82+
) {
83+
try {
84+
val intent = CustomTabsIntent.Builder().build() // TODO: warmup
85+
intent.launchUrl(context, uiState.url.toUri())
86+
} catch (e: Exception) {
87+
Log.e("SettingsPage", "Failed to open ${uiState.url}", e)
9088
}
91-
} else { // need login
92-
LoginPart()
9389
}
94-
AboutCard(openLicensePage = openLicensePage)
90+
} else { // need login
91+
LoginPart(Modifier.padding(horizontal = 8.dp))
9592
}
93+
AboutCard(Modifier.padding(horizontal = 8.dp), openLicensePage = openLicensePage)
9694
}
9795
}
9896

@@ -128,7 +126,7 @@ private fun UserProfilePart(
128126
Column(
129127
modifier = modifier,
130128
horizontalAlignment = Alignment.CenterHorizontally,
131-
verticalArrangement = Arrangement.spacedBy(4.dp),
129+
verticalArrangement = Arrangement.spacedBy(8.dp),
132130
) {
133131
AsyncImage(
134132
model = avatar,

app/src/main/kotlin/day/vitayuzu/neodb/util/Navi.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ sealed interface Navi {
3535
// Top level screens
3636
val mainScreens = listOf(
3737
MainScreen(R.string.home_title, Home, Icons.Default.Home),
38-
MainScreen(R.string.library_title, Library, Icons.Default.DateRange), // FIXME: library icon
38+
MainScreen(R.string.library_title, Library, Icons.Default.DateRange),
3939
MainScreen(R.string.settings_title, Settings, Icons.Default.Settings),
4040
)
4141
}

0 commit comments

Comments
 (0)