diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-07-30 16:06:04 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-07-31 15:32:33 +0000 |
| commit | 251861f1a82ba70d538ca1a682a045661625c9b6 (patch) | |
| tree | 711e02c804b06a3afcd6e02928ca5e68876244bf /android/src | |
| parent | 237e287bf86a721556603673a9cc4617282c0732 (diff) | |
| download | mullvadvpn-251861f1a82ba70d538ca1a682a045661625c9b6.tar.xz mullvadvpn-251861f1a82ba70d538ca1a682a045661625c9b6.zip | |
Store upgrade information in `AppVersionInfoCache`
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/AppVersionInfoCache.kt | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/AppVersionInfoCache.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/AppVersionInfoCache.kt index cbc11abfef..bcf0fef11e 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/AppVersionInfoCache.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/dataproxy/AppVersionInfoCache.kt @@ -38,6 +38,11 @@ class AppVersionInfoCache(val parentActivity: MainActivity) { var latest: String? = null private set + var isLatest = true + private set + var upgradeVersion: String? = null + private set + private val listener = object : OnSharedPreferenceChangeListener { override fun onSharedPreferenceChanged(preferences: SharedPreferences, key: String) { when (key) { @@ -45,7 +50,10 @@ class AppVersionInfoCache(val parentActivity: MainActivity) { KEY_LAST_UPDATED -> lastUpdated = preferences.getLong(key, lastUpdated) KEY_LATEST_STABLE -> latestStable = preferences.getString(key, latestStable) KEY_LATEST -> latest = preferences.getString(key, latest) + else -> return } + + updateUpgradeVersion() } } @@ -68,5 +76,19 @@ class AppVersionInfoCache(val parentActivity: MainActivity) { version = currentVersion isStable = !currentVersion.contains("-") + + updateUpgradeVersion() + } + + private fun updateUpgradeVersion() { + val target = if (isStable) latestStable else latest + + if (target == version) { + isLatest = true + upgradeVersion = null + } else { + isLatest = false + upgradeVersion = target + } } } |
