diff --git a/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt index 8b5b6ad14d..067acecb39 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/pin/SvrRepository.kt @@ -156,7 +156,6 @@ object SvrRepository { SignalStore.svr.isRegistrationLockEnabled = false SignalStore.pin.resetPinReminders() SignalStore.svr.isPinForgottenOrSkipped = false - SignalStore.storageService.setNeedsAccountRestore(false) SignalStore.pin.keyboardType = pinKeyboardType SignalStore.storageService.setNeedsAccountRestore(false) diff --git a/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt index f75dfafd6a..6ec4cb3833 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/registration/ui/RegistrationViewModel.kt @@ -827,26 +827,25 @@ class RegistrationViewModel : ViewModel() { if (reglockEnabled) { SignalStore.onboarding.clearAll() - val stopwatch = Stopwatch("RegistrationLockRestore") + } + + if (reglockEnabled || SignalStore.storageService.lastSyncTime == 0L) { + val stopwatch = Stopwatch("post-reg-storage-service") AppDependencies.jobManager.runSynchronously(StorageAccountRestoreJob(), StorageAccountRestoreJob.LIFESPAN) - stopwatch.split("AccountRestore") + stopwatch.split("account-restore") AppDependencies.jobManager .startChain(StorageSyncJob()) .then(ReclaimUsernameAndLinkJob()) .enqueueAndBlockUntilCompletion(TimeUnit.SECONDS.toMillis(10)) - stopwatch.split("ContactRestore") - - refreshRemoteConfig() - - stopwatch.split("RemoteConfig") + stopwatch.split("storage-sync") stopwatch.stop(TAG) - } else { - refreshRemoteConfig() } + refreshRemoteConfig() + store.update { it.copy( registrationCheckpoint = RegistrationCheckpoint.LOCAL_REGISTRATION_COMPLETE,