From ffccbb5d90ee181bb0d88992eb74033428811c2d Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 3 Nov 2023 16:48:42 +0100 Subject: [PATCH] Use AsyncView in SecureBackupEnterRecoveryKeyView --- .../enter/SecureBackupEnterRecoveryKeyView.kt | 23 ++++++------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enter/SecureBackupEnterRecoveryKeyView.kt b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enter/SecureBackupEnterRecoveryKeyView.kt index c3e20e2312..b40305e0d5 100644 --- a/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enter/SecureBackupEnterRecoveryKeyView.kt +++ b/features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enter/SecureBackupEnterRecoveryKeyView.kt @@ -20,19 +20,17 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.runtime.Composable -import androidx.compose.runtime.LaunchedEffect import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import androidx.compose.ui.tooling.preview.PreviewParameter import androidx.compose.ui.unit.dp import io.element.android.features.securebackup.impl.R import io.element.android.features.securebackup.impl.setup.views.RecoveryKeyView -import io.element.android.libraries.architecture.Async import io.element.android.libraries.designsystem.atomic.molecules.ButtonColumnMolecule import io.element.android.libraries.designsystem.atomic.molecules.IconTitleSubtitleMolecule import io.element.android.libraries.designsystem.atomic.pages.HeaderFooterPage +import io.element.android.libraries.designsystem.components.async.AsyncView import io.element.android.libraries.designsystem.components.button.BackButton -import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog import io.element.android.libraries.designsystem.preview.ElementPreview import io.element.android.libraries.designsystem.preview.PreviewsDayNight import io.element.android.libraries.designsystem.theme.components.Button @@ -48,19 +46,12 @@ fun SecureBackupEnterRecoveryKeyView( onBackClicked: () -> Unit, modifier: Modifier = Modifier, ) { - when (state.submitAction) { - Async.Uninitialized -> Unit - is Async.Failure -> ErrorDialog( - content = state.submitAction.error.message ?: state.submitAction.error.toString(), - onDismiss = { - state.eventSink(SecureBackupEnterRecoveryKeyEvents.ClearDialog) - } - ) - is Async.Loading -> Unit - is Async.Success -> LaunchedEffect(state.submitAction) { - onDone() - } - } + AsyncView( + async = state.submitAction, + onSuccess = { onDone() }, + showProgressDialog = false, + onErrorDismiss = { state.eventSink(SecureBackupEnterRecoveryKeyEvents.ClearDialog) }, + ) HeaderFooterPage( modifier = modifier,