From 8b19cbb60340c4cc3f536267258f9ee4c0ed4e01 Mon Sep 17 00:00:00 2001 From: Cody Henthorne Date: Fri, 3 Oct 2025 14:57:41 -0400 Subject: [PATCH] Show correct dialog when validating AEP after registration. --- .../PostRegistrationEnterBackupKeyFragment.kt | 21 ++++++++++--------- ...PostRegistrationEnterBackupKeyViewModel.kt | 2 +- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyFragment.kt b/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyFragment.kt index bd665d4559..41225bdfd5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyFragment.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyFragment.kt @@ -24,6 +24,7 @@ import org.signal.core.ui.compose.Dialogs import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.R import org.thoughtcrime.securesms.compose.ComposeFragment +import org.thoughtcrime.securesms.registration.ui.restore.AccountEntropyPoolVerification import org.thoughtcrime.securesms.registration.ui.restore.EnterBackupKeyScreen import org.thoughtcrime.securesms.util.CommunicationActions import org.thoughtcrime.securesms.util.navigation.safeNavigate @@ -79,8 +80,8 @@ class PostRegistrationEnterBackupKeyFragment : ComposeFragment() { ) { ErrorContent( showBackupTierNotRestoreError = state.showBackupTierNotRestoreError, - onBackupTierRetry = { viewModel.restoreBackupTier() }, - onCancel = { findNavController().popBackStack() }, + aepError = state.aepValidationError, + onBackupKeyHelp = { CommunicationActions.openBrowserLink(requireContext(), LEARN_MORE_URL) }, onBackupTierNotRestoredDismiss = viewModel::hideRestoreBackupTierFailed ) } @@ -90,18 +91,18 @@ class PostRegistrationEnterBackupKeyFragment : ComposeFragment() { @Composable private fun ErrorContent( showBackupTierNotRestoreError: Boolean, - onBackupTierRetry: () -> Unit = {}, - onCancel: () -> Unit = {}, + aepError: AccountEntropyPoolVerification.AEPValidationError?, + onBackupKeyHelp: () -> Unit = {}, onBackupTierNotRestoredDismiss: () -> Unit = {} ) { - if (showBackupTierNotRestoreError) { + if (aepError == AccountEntropyPoolVerification.AEPValidationError.Incorrect && showBackupTierNotRestoreError) { Dialogs.SimpleAlertDialog( - title = stringResource(R.string.EnterBackupKey_backup_not_found), - body = stringResource(R.string.EnterBackupKey_backup_key_you_entered_is_correct_but_no_backup), + title = stringResource(R.string.EnterBackupKey_incorrect_backup_key_title), + body = stringResource(R.string.EnterBackupKey_incorrect_backup_key_message), confirm = stringResource(R.string.EnterBackupKey_try_again), - dismiss = stringResource(R.string.EnterBackupKey_skip_restore), - onConfirm = onBackupTierRetry, - onDeny = onCancel, + dismiss = stringResource(R.string.EnterBackupKey_backup_key_help), + onConfirm = {}, + onDeny = onBackupKeyHelp, onDismiss = onBackupTierNotRestoredDismiss ) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyViewModel.kt index 4e4b6e3f5f..00772dd4d4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/restore/enterbackupkey/PostRegistrationEnterBackupKeyViewModel.kt @@ -70,7 +70,7 @@ class PostRegistrationEnterBackupKeyViewModel : ViewModel() { store.update { it.copy(restoreBackupTierSuccessful = true) } } else { Log.w(TAG, "Unable to validate AEP against currently registered account") - store.update { it.copy(showBackupTierNotRestoreError = true) } + store.update { it.copy(aepValidationError = AEPValidationError.Incorrect, showBackupTierNotRestoreError = true) } } } }