diff options
| author | Albin <albin@mullvad.net> | 2024-06-13 09:29:41 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2024-06-13 09:45:34 +0200 |
| commit | 8252bc2fdec20cee5ea334b98add2a345adf1ada (patch) | |
| tree | 4afdb32cb6760d633aa1ecebc0e976df6c405d63 /android | |
| parent | 4b0f4388fd95d2354b23785472934136c0af8da4 (diff) | |
| download | mullvadvpn-8252bc2fdec20cee5ea334b98add2a345adf1ada.tar.xz mullvadvpn-8252bc2fdec20cee5ea334b98add2a345adf1ada.zip | |
Fix missing device refresh
Diffstat (limited to 'android')
5 files changed, 13 insertions, 0 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt index c98ce4fa59..a27ed9adbd 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt @@ -118,6 +118,7 @@ class ConnectViewModel( viewModelScope.launch { accountRepository.getAccountData() } } } + viewModelScope.launch { deviceRepository.updateDevice() } } fun onDisconnectClick() { diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt index 66e9a719eb..7784181466 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt @@ -59,6 +59,7 @@ class OutOfTimeViewModel( } verifyPurchases() fetchPaymentAvailability() + viewModelScope.launch { deviceRepository.updateDevice() } } fun onSitePaymentClick() { diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt index 208c9d871b..4b61468f8e 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt @@ -59,6 +59,7 @@ class WelcomeViewModel( } verifyPurchases() fetchPaymentAvailability() + viewModelScope.launch { deviceRepository.updateDevice() } } private fun hasAddedTimeEffect() = diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt index 6cc6d25c36..f8073323c8 100644 --- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt +++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt @@ -210,6 +210,10 @@ class ManagementService( .map { it.toDomain() } .mapLeft { GetDeviceStateError.Unknown(it) } + suspend fun updateDevice() { + grpc.updateDevice(Empty.getDefaultInstance()) + } + suspend fun getDeviceList(token: AccountNumber): Either<GetDeviceListError, List<Device>> = Either.catch { grpc.listDevices(StringValue.of(token.value)) } .map { it.devicesList.map(ManagementInterface.Device::toDomain) } diff --git a/android/lib/shared/src/main/kotlin/net/mullvad/mullvadvpn/lib/shared/DeviceRepository.kt b/android/lib/shared/src/main/kotlin/net/mullvad/mullvadvpn/lib/shared/DeviceRepository.kt index f518dc02d1..1c971e8069 100644 --- a/android/lib/shared/src/main/kotlin/net/mullvad/mullvadvpn/lib/shared/DeviceRepository.kt +++ b/android/lib/shared/src/main/kotlin/net/mullvad/mullvadvpn/lib/shared/DeviceRepository.kt @@ -1,5 +1,6 @@ package net.mullvad.mullvadvpn.lib.shared +import android.util.Log import arrow.core.Either import kotlinx.coroutines.CoroutineDispatcher import kotlinx.coroutines.CoroutineScope @@ -33,4 +34,9 @@ class DeviceRepository( suspend fun deviceList(accountNumber: AccountNumber): Either<GetDeviceListError, List<Device>> = managementService.getDeviceList(accountNumber) + + suspend fun updateDevice() { + Log.d("mullvad", "Update device") + managementService.updateDevice() + } } |
