summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-03-27 00:23:42 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-03-27 17:28:47 +0000
commit6878105343451f8def70409675e638ed7952fd15 (patch)
treebf6af6724941f641c127d18380b5fcf75b47ec18 /android/src
parent327da747ddd9868ecc7dcaca57846b95bef528a1 (diff)
downloadmullvadvpn-6878105343451f8def70409675e638ed7952fd15.tar.xz
mullvadvpn-6878105343451f8def70409675e638ed7952fd15.zip
Update `LocationInfo` in UI thread
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ConnectFragment.kt7
1 files changed, 6 insertions, 1 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ConnectFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ConnectFragment.kt
index 2d8645b6be..c59f1b192d 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ConnectFragment.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/ConnectFragment.kt
@@ -24,6 +24,7 @@ class ConnectFragment : ServiceDependentFragment(OnNoService.GoToLaunchScreen) {
private lateinit var locationInfo: LocationInfo
private lateinit var updateKeyStatusJob: Job
+ private var updateLocationInfoJob: Job? = null
private var updateTunnelStateJob: Job? = null
private var isTunnelInfoExpanded = false
@@ -82,7 +83,10 @@ class ConnectFragment : ServiceDependentFragment(OnNoService.GoToLaunchScreen) {
}
locationInfoCache.onNewLocation = { location ->
- locationInfo.location = location
+ updateLocationInfoJob?.cancel()
+ updateLocationInfoJob = GlobalScope.launch(Dispatchers.Main) {
+ locationInfo.location = location
+ }
}
relayListListener.onRelayListChange = { _, selectedRelayItem ->
@@ -105,6 +109,7 @@ class ConnectFragment : ServiceDependentFragment(OnNoService.GoToLaunchScreen) {
connectionProxy.onUiStateChange.unsubscribe(listener)
}
+ updateLocationInfoJob?.cancel()
updateTunnelStateJob?.cancel()
notificationBanner.onPause()