summaryrefslogtreecommitdiffhomepage
path: root/android/src/main
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-06-11 19:06:29 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2019-06-17 10:14:37 +0000
commit453665c7f4f9e282a4cb3e330847a06ee98fd046 (patch)
treec1a9fbfec6c9c262d3625cd1ac2e81101ec12a8b /android/src/main
parent69507e9d8dcbe2f2d35db183d11843de75271fba (diff)
downloadmullvadvpn-453665c7f4f9e282a4cb3e330847a06ee98fd046.tar.xz
mullvadvpn-453665c7f4f9e282a4cb3e330847a06ee98fd046.zip
Show account number in Account screen
Diffstat (limited to 'android/src/main')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/AccountFragment.kt36
-rw-r--r--android/src/main/res/layout/account.xml50
-rw-r--r--android/src/main/res/values/strings.xml2
3 files changed, 78 insertions, 10 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/AccountFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/AccountFragment.kt
index 828090d21b..f023907a8c 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/AccountFragment.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/AccountFragment.kt
@@ -1,12 +1,31 @@
package net.mullvad.mullvadvpn
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.GlobalScope
+import kotlinx.coroutines.Job
+
+import android.content.Context
import android.os.Bundle
import android.support.v4.app.Fragment
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
+import android.widget.TextView
class AccountFragment : Fragment() {
+ private lateinit var parentActivity: MainActivity
+ private lateinit var accountNumberContainer: View
+ private lateinit var accountNumberDisplay: TextView
+
+ private var updateViewJob: Job? = null
+
+ override fun onAttach(context: Context) {
+ super.onAttach(context)
+
+ parentActivity = context as MainActivity
+ }
+
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
@@ -15,9 +34,24 @@ class AccountFragment : Fragment() {
val view = inflater.inflate(R.layout.account, container, false)
view.findViewById<View>(R.id.back).setOnClickListener {
- activity?.onBackPressed()
+ parentActivity.onBackPressed()
}
+ accountNumberContainer = view.findViewById<View>(R.id.account_number_container)
+ accountNumberDisplay = view.findViewById<TextView>(R.id.account_number_display)
+
+ updateViewJob = updateView()
+
return view
}
+
+ private fun updateView() = GlobalScope.launch(Dispatchers.Main) {
+ val accountCache = parentActivity.accountCache
+ val accountNumber = accountCache.accountNumber.await()
+
+ if (accountNumber != null) {
+ accountNumberDisplay.setText(accountCache.accountNumber.await())
+ accountNumberContainer.visibility = View.VISIBLE
+ }
+ }
}
diff --git a/android/src/main/res/layout/account.xml b/android/src/main/res/layout/account.xml
index 89b2e38f60..fdec4af95d 100644
--- a/android/src/main/res/layout/account.xml
+++ b/android/src/main/res/layout/account.xml
@@ -31,15 +31,47 @@
android:text="@string/settings"
/>
</LinearLayout>
- <TextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:layout_marginHorizontal="24dp"
android:layout_marginTop="4dp"
- android:layout_marginLeft="24dp"
android:layout_marginBottom="24dp"
- android:textColor="@color/white"
- android:textSize="32sp"
- android:textStyle="bold"
- android:text="@string/settings_account"
- />
+ android:orientation="vertical"
+ >
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="24dp"
+ android:textColor="@color/white"
+ android:textSize="32sp"
+ android:textStyle="bold"
+ android:text="@string/settings_account"
+ />
+ <LinearLayout android:id="@+id/account_number_container"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="24dp"
+ android:orientation="vertical"
+ android:visibility="invisible"
+ >
+ <TextView
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginBottom="9dp"
+ android:textColor="@color/white60"
+ android:textSize="13sp"
+ android:textStyle="bold"
+ android:text="@string/account_number"
+ />
+ <TextView android:id="@+id/account_number_display"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:textColor="@color/white"
+ android:textSize="16sp"
+ android:textStyle="bold"
+ android:text=""
+ />
+ </LinearLayout>
+ </LinearLayout>
</LinearLayout>
diff --git a/android/src/main/res/values/strings.xml b/android/src/main/res/values/strings.xml
index ae2abb9d34..a0cfa0c162 100644
--- a/android/src/main/res/values/strings.xml
+++ b/android/src/main/res/values/strings.xml
@@ -18,6 +18,8 @@
<string name="out_of_time">Out of time</string>
<string name="quit">Quit</string>
+ <string name="account_number">Account number</string>
+
<string name="unsecured_connection">Unsecured connection</string>
<string name="creating_secure_connection">Creating secure connection</string>
<string name="secure_connection">Secure connection</string>