Fix incorrect backup passphrase error toast not showing.

This commit is contained in:
Cody Henthorne
2024-10-31 12:33:48 -04:00
committed by GitHub
parent 7e93e15a9b
commit 1a8988f825
3 changed files with 10 additions and 10 deletions

View File

@@ -93,12 +93,11 @@ class RestoreLocalBackupFragment : LoggingFragment(R.layout.fragment_restore_loc
}
}
restoreLocalBackupViewModel.backupComplete.observe(viewLifecycleOwner) {
if (it.first) {
val importResult = it.second
if (importResult == null) {
onBackupCompletedSuccessfully()
} else {
restoreLocalBackupViewModel.importResult.observe(viewLifecycleOwner) { importResult ->
when (importResult) {
null -> Unit
RestoreRepository.BackupImportResult.SUCCESS -> onBackupCompletedSuccessfully()
else -> {
handleBackupImportError(importResult)
restoreLocalBackupViewModel.backupImportErrorShown()
}
@@ -151,14 +150,17 @@ class RestoreLocalBackupFragment : LoggingFragment(R.layout.fragment_restore_loc
Log.i(TAG, "Notifying user of restore failure due to version downgrade.")
Toast.makeText(requireContext(), R.string.RegistrationActivity_backup_failure_downgrade, Toast.LENGTH_LONG).show()
}
RestoreRepository.BackupImportResult.FAILURE_FOREIGN_KEY -> {
Log.i(TAG, "Notifying user of restore failure due to foreign key.")
Toast.makeText(requireContext(), R.string.RegistrationActivity_backup_failure_foreign_key, Toast.LENGTH_LONG).show()
}
RestoreRepository.BackupImportResult.FAILURE_UNKNOWN -> {
Log.i(TAG, "Notifying user of restore failure due to incorrect passphrase.")
Toast.makeText(requireContext(), R.string.RegistrationActivity_incorrect_backup_passphrase, Toast.LENGTH_LONG).show()
}
RestoreRepository.BackupImportResult.SUCCESS -> {
Log.w(TAG, "Successful backup import should not be handled in this function.", IllegalStateException())
}

View File

@@ -22,7 +22,6 @@ data class RestoreLocalBackupState(
val backupVerifyingInProgress: Boolean = false,
val backupProgressCount: Long = -1,
val backupEstimatedTotalCount: Long = -1,
val backupRestoreComplete: Boolean = false,
val backupImportResult: RestoreRepository.BackupImportResult? = null,
val abort: Boolean = false
)

View File

@@ -30,7 +30,7 @@ class RestoreLocalBackupViewModel(fileBackupUri: Uri) : ViewModel() {
val backupReadError = store.map { it.backupFileStateError }.asLiveData()
val backupComplete = store.map { Pair(it.backupRestoreComplete, it.backupImportResult) }.asLiveData()
val importResult = store.map { it.backupImportResult }.asLiveData()
fun prepareRestore(context: Context) {
val backupFileUri = store.value.uri
@@ -99,9 +99,8 @@ class RestoreLocalBackupViewModel(fileBackupUri: Uri) : ViewModel() {
store.update {
it.copy(
backupImportResult = if (importResult == RestoreRepository.BackupImportResult.SUCCESS) null else importResult,
backupImportResult = importResult,
restoreInProgress = false,
backupRestoreComplete = importResult == RestoreRepository.BackupImportResult.SUCCESS,
backupEstimatedTotalCount = -1L,
backupProgressCount = -1L,
backupVerifyingInProgress = false