diff options
Diffstat (limited to 'android')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt | 10 | ||||
| -rw-r--r-- | android/src/main/res/layout/wireguard_key.xml | 30 |
2 files changed, 31 insertions, 9 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 74576d6d0d..2e678e2d33 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt @@ -51,6 +51,7 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre private lateinit var publicKey: TextView private lateinit var publicKeyAge: TimeSinceLabel private lateinit var statusMessage: TextView + private lateinit var verifyingKeySpinner: View private lateinit var manageKeysButton: Button private lateinit var generateKeyButton: android.widget.Button private lateinit var verifyKeyButton: Button @@ -101,6 +102,8 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } } + verifyingKeySpinner = view.findViewById(R.id.verifying_key_spinner) + val keyUrl = parentActivity.getString(R.string.wg_key_url) urlController = BlockingController( @@ -261,8 +264,15 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre generatingKey = false updateViews() currentJob = GlobalScope.launch(Dispatchers.Main) { + statusMessage.visibility = View.GONE + verifyingKeySpinner.visibility = View.VISIBLE + keyStatusListener.verifyKey().join() + + verifyingKeySpinner.visibility = View.GONE + statusMessage.visibility = View.VISIBLE validatingKey = false + when (val state = keyStatusListener.keyStatus) { is KeygenEvent.NewKey -> { if (state.verified == null) { diff --git a/android/src/main/res/layout/wireguard_key.xml b/android/src/main/res/layout/wireguard_key.xml index 0d5cb8e3e3..604c4f2f2a 100644 --- a/android/src/main/res/layout/wireguard_key.xml +++ b/android/src/main/res/layout/wireguard_key.xml @@ -78,15 +78,27 @@ android:textSize="16sp" android:textStyle="bold" /> </LinearLayout> - <TextView android:id="@+id/wireguard_key_status" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:paddingHorizontal="24dp" - android:paddingVertical="12dp" - android:textColor="@color/red" - android:textSize="13sp" - android:textStyle="bold" - android:visibility="gone" /> + <FrameLayout android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingHorizontal="24dp" + android:paddingVertical="12dp"> + <TextView android:id="@+id/wireguard_key_status" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:textColor="@color/red" + android:textSize="13sp" + android:textStyle="bold" + android:visibility="gone" /> + <ProgressBar android:id="@+id/verifying_key_spinner" + android:layout_width="20dp" + android:layout_height="20dp" + android:layout_gravity="center" + android:indeterminate="true" + android:indeterminateOnly="true" + android:indeterminateDuration="600" + android:indeterminateDrawable="@drawable/icon_spinner" + android:visibility="gone" /> + </FrameLayout> <Space android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" /> |
