diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-07-24 14:13:21 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-07-28 13:52:59 +0000 |
| commit | 4428e1fe3226924e5b879ddcff90ef95e22714ca (patch) | |
| tree | cc85f4a6f229e35d29848364ae33248d18caad4a /android | |
| parent | d8bb6f1f881c6fffe1133ff7f1bf65229bff424a (diff) | |
| download | mullvadvpn-4428e1fe3226924e5b879ddcff90ef95e22714ca.tar.xz mullvadvpn-4428e1fe3226924e5b879ddcff90ef95e22714ca.zip | |
Use `AppVersionCell` widget
Diffstat (limited to 'android')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SettingsFragment.kt | 34 | ||||
| -rw-r--r-- | android/src/main/res/layout/settings.xml | 53 |
2 files changed, 12 insertions, 75 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SettingsFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SettingsFragment.kt index 970b3b7639..f0f4483e16 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SettingsFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/SettingsFragment.kt @@ -1,25 +1,21 @@ package net.mullvad.mullvadvpn.ui -import android.content.Intent -import android.net.Uri import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.Button import android.widget.ImageButton -import android.widget.TextView import net.mullvad.mullvadvpn.R import net.mullvad.mullvadvpn.dataproxy.AppVersionInfoCache import net.mullvad.mullvadvpn.service.AccountCache import net.mullvad.mullvadvpn.ui.widget.AccountCell +import net.mullvad.mullvadvpn.ui.widget.AppVersionCell import net.mullvad.mullvadvpn.ui.widget.NavigateCell class SettingsFragment : ServiceAwareFragment() { private lateinit var accountMenu: AccountCell - private lateinit var appVersionWarning: View - private lateinit var appVersionLabel: TextView - private lateinit var appVersionFooter: View + private lateinit var appVersionMenu: AppVersionCell private lateinit var preferencesMenu: View private lateinit var advancedMenu: View private lateinit var titleController: CollapsibleTitleController @@ -70,17 +66,12 @@ class SettingsFragment : ServiceAwareFragment() { targetFragment = AdvancedFragment::class } - view.findViewById<View>(R.id.app_version).setOnClickListener { - openLink(R.string.download_url) - } - view.findViewById<NavigateCell>(R.id.report_a_problem).apply { targetFragment = ProblemReportFragment::class } - appVersionWarning = view.findViewById(R.id.app_version_warning) - appVersionLabel = view.findViewById<TextView>(R.id.app_version_label) - appVersionFooter = view.findViewById(R.id.app_version_footer) + appVersionMenu = view.findViewById<AppVersionCell>(R.id.app_version) + titleController = CollapsibleTitleController(view) return view @@ -134,12 +125,6 @@ class SettingsFragment : ServiceAwareFragment() { } } - private fun openLink(urlResourceId: Int) { - val intent = Intent(Intent.ACTION_VIEW, Uri.parse(parentActivity.getString(urlResourceId))) - - startActivity(intent) - } - private fun updateLoggedInStatus(loggedIn: Boolean) { val visibility = if (loggedIn) { View.VISIBLE @@ -156,14 +141,7 @@ class SettingsFragment : ServiceAwareFragment() { val isOutdated = versionInfoCache?.isOutdated ?: false val isSupported = versionInfoCache?.isSupported ?: true - appVersionLabel.setText(versionInfoCache?.version ?: "") - - if (!isOutdated && isSupported) { - appVersionWarning.visibility = View.GONE - appVersionFooter.visibility = View.GONE - } else { - appVersionWarning.visibility = View.VISIBLE - appVersionFooter.visibility = View.VISIBLE - } + appVersionMenu.updateAvailable = isOutdated || !isSupported + appVersionMenu.version = versionInfoCache?.version ?: "" } } diff --git a/android/src/main/res/layout/settings.xml b/android/src/main/res/layout/settings.xml index 2acefa2157..b356c7c7be 100644 --- a/android/src/main/res/layout/settings.xml +++ b/android/src/main/res/layout/settings.xml @@ -58,53 +58,12 @@ android:layout_height="wrap_content" android:layout_marginTop="1dp" mullvad:text="@string/settings_advanced" /> - <LinearLayout android:id="@+id/app_version" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_marginTop="24dp" - android:paddingHorizontal="16dp" - android:background="@drawable/cell_button_background" - android:clickable="true" - android:gravity="center"> - <ImageView android:id="@+id/app_version_warning" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_weight="0" - android:paddingLeft="8dp" - android:src="@drawable/icon_alert" /> - <TextView android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_weight="1" - android:paddingHorizontal="8dp" - android:paddingVertical="17dp" - android:textColor="@color/white" - android:textSize="20sp" - android:textStyle="bold" - android:text="@string/app_version" /> - <TextView android:id="@+id/app_version_label" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_weight="1" - android:paddingHorizontal="8dp" - android:gravity="right" - android:textColor="@color/white60" - android:textSize="13sp" - android:textStyle="bold" - android:text="" /> - <ImageView android:layout_width="16dp" - android:layout_height="16dp" - android:layout_weight="0" - android:alpha="0.6" - android:src="@drawable/icon_extlink" /> - </LinearLayout> - <TextView android:id="@+id/app_version_footer" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:paddingTop="8dp" - android:paddingHorizontal="24dp" - android:textColor="@color/white60" - android:textSize="13sp" - android:text="@string/update_available_footer" /> + <net.mullvad.mullvadvpn.ui.widget.AppVersionCell android:id="@+id/app_version" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginTop="1dp" + mullvad:text="@string/app_version" + mullvad:footer="@string/update_available_footer" /> <net.mullvad.mullvadvpn.ui.widget.NavigateCell android:id="@+id/report_a_problem" android:layout_width="match_parent" android:layout_height="wrap_content" |
