diff options
| author | Albin <albin@mullvad.net> | 2022-03-30 15:30:10 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2022-04-20 16:36:51 +0200 |
| commit | 7163ba1209d3dc2bc9c10ad8273f87be28e3aa49 (patch) | |
| tree | b4f8e2a33b3ed49d31e187e4c7f504c0e0d00bd1 /android | |
| parent | 2deef36bfb89725bdc3ca78af21c88a312bd9ccd (diff) | |
| download | mullvadvpn-7163ba1209d3dc2bc9c10ad8273f87be28e3aa49.tar.xz mullvadvpn-7163ba1209d3dc2bc9c10ad8273f87be28e3aa49.zip | |
Fix initial device refresh
Diffstat (limited to 'android')
| -rw-r--r-- | android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/LaunchFragment.kt | 6 | ||||
| -rw-r--r-- | android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt | 4 |
2 files changed, 6 insertions, 4 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/LaunchFragment.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/LaunchFragment.kt index 5f0e417f58..1d1065f81d 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/LaunchFragment.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/LaunchFragment.kt @@ -5,7 +5,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import kotlinx.coroutines.flow.first -import kotlinx.coroutines.flow.onSubscription +import kotlinx.coroutines.flow.onEach import net.mullvad.mullvadvpn.R import net.mullvad.mullvadvpn.model.DeviceState import net.mullvad.mullvadvpn.ui.serviceconnection.DeviceRepository @@ -39,7 +39,9 @@ class LaunchFragment : ServiceAwareFragment() { private fun advanceToNextScreen(deviceRepository: DeviceRepository) { jobTracker.newUiJob("advanceToNextScreen") { deviceRepository.deviceState - .onSubscription { deviceRepository.refreshDeviceState() } + .onEach { state -> + if (state.isInitialState()) deviceRepository.refreshDeviceState() + } .first { state -> state.isInitialState().not() } .let { deviceState -> when (deviceState) { diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt index de796c5be3..7d1eed2961 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/ui/serviceconnection/DeviceRepository.kt @@ -1,7 +1,7 @@ package net.mullvad.mullvadvpn.ui.serviceconnection import kotlinx.coroutines.CoroutineScope -import kotlinx.coroutines.flow.SharingStarted.Companion.Lazily +import kotlinx.coroutines.flow.SharingStarted.Companion.Eagerly import kotlinx.coroutines.flow.stateIn import net.mullvad.mullvadvpn.model.DeviceState @@ -12,7 +12,7 @@ class DeviceRepository( val deviceState = dataSource.deviceStateUpdates .stateIn( externalScope, - Lazily, + Eagerly, DeviceState.InitialState ) |
