diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-07-22 13:07:34 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2019-07-23 18:02:34 +0000 |
| commit | e2438a39dd8a763788f60ad1ec287b8461eb946e (patch) | |
| tree | 19b00cad4eb77650fd80b03329537f15f225d64a /android/src | |
| parent | 280606ab4a3e37d053901807a7d79ce45ee777cd (diff) | |
| download | mullvadvpn-e2438a39dd8a763788f60ad1ec287b8461eb946e.tar.xz mullvadvpn-e2438a39dd8a763788f60ad1ec287b8461eb946e.zip | |
Refactor `ConnectFragment` UI update code
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectFragment.kt | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectFragment.kt index ce3e9cc5ad..7ea6be75e8 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ConnectFragment.kt @@ -31,7 +31,7 @@ class ConnectFragment : Fragment() { private lateinit var locationInfoCache: LocationInfoCache private lateinit var relayListListener: RelayListListener - private var updateViewJob: Job? = null + private lateinit var updateTunnelStateJob: Job override fun onAttach(context: Context) { super.onAttach(context) @@ -68,13 +68,11 @@ class ConnectFragment : Fragment() { switchLocationButton = SwitchLocationButton(view) switchLocationButton.onClick = { openSwitchLocationScreen() } - updateView(connectionProxy.uiState) + updateTunnelStateJob = updateTunnelState(connectionProxy.uiState) connectionProxy.onUiStateChange = { uiState -> - updateViewJob?.cancel() - updateViewJob = GlobalScope.launch(Dispatchers.Main) { - updateView(uiState) - } + updateTunnelStateJob.cancel() + updateTunnelStateJob = updateTunnelState(uiState) } return view @@ -99,12 +97,12 @@ class ConnectFragment : Fragment() { switchLocationButton.onDestroy() connectionProxy.onUiStateChange = null - updateViewJob?.cancel() + updateTunnelStateJob.cancel() super.onDestroyView() } - private fun updateView(uiState: TunnelState) { + private fun updateTunnelState(uiState: TunnelState) = GlobalScope.launch(Dispatchers.Main) { val realState = connectionProxy.state locationInfoCache.state = realState |
