summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
Diffstat (limited to 'android')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt10
-rw-r--r--android/src/main/res/layout/wireguard_key.xml30
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" />