diff options
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt index 65f5daf018..fdcfe14e6b 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt @@ -44,7 +44,8 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre field = value updateKeyInformation() updateStatus() - updateActionButtons() + updateGenerateKeyButtonState() + updateVerifyKeyButtonState() } } @@ -54,6 +55,7 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre field = value updateKeyInformation() updateStatus() + updateVerifyKeyButtonState() } } @@ -62,7 +64,8 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre if (field != value) { field = value updateStatus() - updateActionButtons() + updateGenerateKeyButtonState() + updateVerifyKeyButtonState() manageKeysButton.setEnabled(value) } } @@ -238,11 +241,15 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } } - private fun updateActionButtons() { + private fun updateGenerateKeyButtonState() { + generateKeyButton.setEnabled(actionState is ActionState.Idle && hasConnectivity) + } + + private fun updateVerifyKeyButtonState() { val isIdle = actionState is ActionState.Idle + val hasKey = keyStatus is KeygenEvent.NewKey - generateKeyButton.setEnabled(isIdle && hasConnectivity) - verifyKeyButton.setEnabled(isIdle && hasConnectivity) + verifyKeyButton.setEnabled(isIdle && hasConnectivity && hasKey) } private fun setStatusMessage(message: Int, color: Int) { |
