Reduce frequency of restore progress state logs.

This commit is contained in:
Cody Henthorne
2026-07-23 10:51:35 -04:00
committed by Michelle Tang
parent 263d7b7df1
commit 5a6c41e166
3 changed files with 13 additions and 0 deletions
@@ -22,6 +22,7 @@ import org.signal.core.models.AccountEntropyPool
import org.signal.core.ui.compose.EventDrivenViewModel
import org.signal.core.ui.navigation.ResultEventBus
import org.signal.core.util.logging.Log
import org.signal.core.util.throttleLatest
import org.signal.registration.RegistrationFlowEvent
import org.signal.registration.RegistrationFlowState
import org.signal.registration.RegistrationRepository
@@ -30,6 +31,7 @@ import org.signal.registration.RestoreDecision
import org.signal.registration.screens.shared.RestoreProgress
import org.signal.registration.screens.util.navigateBack
import org.signal.registration.screens.util.navigateTo
import kotlin.time.Duration.Companion.seconds
class LocalBackupRestoreViewModel(
private val repository: RegistrationRepository,
@@ -52,6 +54,7 @@ class LocalBackupRestoreViewModel(
init {
_state
.throttleLatest(1.seconds) { it.restorePhase != LocalBackupRestoreState.RestorePhase.InProgress }
.onEach { Log.d(TAG, "[State] $it") }
.launchIn(viewModelScope)
@@ -20,12 +20,14 @@ import kotlinx.coroutines.flow.update
import kotlinx.coroutines.launch
import org.signal.core.ui.compose.EventDrivenViewModel
import org.signal.core.util.logging.Log
import org.signal.core.util.throttleLatest
import org.signal.registration.RegistrationFlowEvent
import org.signal.registration.RegistrationFlowState
import org.signal.registration.RegistrationRepository
import org.signal.registration.RegistrationRoute
import org.signal.registration.screens.messagesync.MessageSyncScreenState.Stage
import org.signal.registration.screens.util.navigateTo
import kotlin.time.Duration.Companion.seconds
/**
* Drives the link-and-sync message backup restore that runs after this device is registered as a
@@ -49,6 +51,7 @@ class MessageSyncViewModel(
init {
_state
.throttleLatest(1.seconds) { !it.isProgressUpdate() }
.onEach { Log.d(TAG, "[State] $it") }
.launchIn(viewModelScope)
@@ -144,3 +147,7 @@ class MessageSyncViewModel(
}
}
}
private fun MessageSyncScreenState.isProgressUpdate(): Boolean {
return !showSyncFailedDialog && (stage is Stage.Downloading || stage is Stage.Restoring)
}
@@ -20,6 +20,7 @@ import kotlinx.coroutines.withContext
import org.signal.core.models.AccountEntropyPool
import org.signal.core.ui.compose.EventDrivenViewModel
import org.signal.core.util.logging.Log
import org.signal.core.util.throttleLatest
import org.signal.libsignal.net.RequestResult
import org.signal.registration.NetworkController
import org.signal.registration.RegistrationFlowEvent
@@ -31,6 +32,7 @@ import org.signal.registration.screens.shared.RestoreProgress
import org.signal.registration.screens.util.navigateBack
import org.signal.registration.screens.util.navigateTo
import kotlin.coroutines.CoroutineContext
import kotlin.time.Duration.Companion.seconds
class RemoteBackupRestoreViewModel(
private val aep: AccountEntropyPool,
@@ -49,6 +51,7 @@ class RemoteBackupRestoreViewModel(
init {
_state
.throttleLatest(1.seconds) { it.restoreState != RemoteBackupRestoreState.RestoreState.InProgress }
.onEach { Log.d(TAG, "[State] $it") }
.launchIn(viewModelScope)