diff options
| author | David Göransson <david.goransson90@gmail.com> | 2023-09-22 11:12:18 +0200 |
|---|---|---|
| committer | David Göransson <david.goransson90@gmail.com> | 2023-09-27 08:23:26 +0200 |
| commit | a658e8ebc14d110e091b3e1533d2149c6651e863 (patch) | |
| tree | 79413290899e6022c8ea51ff02e0ee64256e9e57 /android | |
| parent | 4105247701b021f44fcf4a55a640c508f0248f0f (diff) | |
| download | mullvadvpn-a658e8ebc14d110e091b3e1533d2149c6651e863.tar.xz mullvadvpn-a658e8ebc14d110e091b3e1533d2149c6651e863.zip | |
Fix keyboard navigation crash
Diffstat (limited to 'android')
3 files changed, 24 insertions, 19 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AccountScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AccountScreen.kt index a2e5eec8df..22dfc34269 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AccountScreen.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/AccountScreen.kt @@ -157,23 +157,23 @@ fun AccountScreen( ) Spacer(modifier = Modifier.weight(1f)) - if (IS_PLAY_BUILD.not()) { - ActionButton( - text = stringResource(id = R.string.manage_account), - onClick = onManageAccountClick, - modifier = - Modifier.padding( - start = Dimens.sideMargin, - end = Dimens.sideMargin, - bottom = Dimens.screenVerticalMargin - ), - colors = - ButtonDefaults.buttonColors( - contentColor = MaterialTheme.colorScheme.onPrimary, - containerColor = MaterialTheme.colorScheme.surface - ) - ) - } + if (IS_PLAY_BUILD.not()) { + ActionButton( + text = stringResource(id = R.string.manage_account), + onClick = onManageAccountClick, + modifier = + Modifier.padding( + start = Dimens.sideMargin, + end = Dimens.sideMargin, + bottom = Dimens.screenVerticalMargin + ), + colors = + ButtonDefaults.buttonColors( + contentColor = MaterialTheme.colorScheme.onPrimary, + containerColor = MaterialTheme.colorScheme.surface + ) + ) + } ActionButton( text = stringResource(id = R.string.redeem_voucher), diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt index b1a25fb581..6a2eaf5811 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt @@ -156,7 +156,13 @@ private fun LoginContent( ) ExposedDropdownMenuBox(expanded = expanded, onExpandedChange = { expanded = it }) { TextField( - modifier = Modifier.menuAnchor().fillMaxWidth(), + modifier = + Modifier.then( + // Using menuAnchor while not showing a dropdown will cause keyboard to + // open and app to crash on navigation + if (state.lastUsedAccount != null) Modifier.menuAnchor() else Modifier + ) + .fillMaxWidth(), value = state.accountNumberInput, label = { Text( diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt index f7efcffb57..3160ff9ac1 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt @@ -21,7 +21,6 @@ fun accountTokenVisualTransformation() = VisualTransformation { override fun transformedToOriginal(offset: Int): Int = offset - (offset - 1) / (ACCOUNT_TOKEN_CHUNK_SIZE + 1) - } ) } |
