This commit is contained in:
Benoit Marty 2024-01-04 18:23:24 +01:00
parent b466ade6a1
commit 1dc6e5edb3
11 changed files with 44 additions and 70 deletions

View file

@ -50,6 +50,7 @@ import io.element.android.features.createroom.impl.R
import io.element.android.features.createroom.impl.components.RoomPrivacyOption
import io.element.android.libraries.designsystem.components.LabelledTextField
import io.element.android.libraries.designsystem.components.async.AsyncActionView
import io.element.android.libraries.designsystem.components.async.AsyncActionViewDefaults
import io.element.android.libraries.designsystem.components.button.BackButton
import io.element.android.libraries.designsystem.preview.ElementPreview
import io.element.android.libraries.designsystem.preview.PreviewsDayNight
@ -150,7 +151,11 @@ fun ConfigureRoomView(
AsyncActionView(
async = state.createRoomAction,
progressText = stringResource(CommonStrings.common_creating_room),
progressDialog = {
AsyncActionViewDefaults.ProgressDialog(
progressText = stringResource(CommonStrings.common_creating_room),
)
},
onSuccess = { onRoomCreated(it) },
errorMessage = { stringResource(R.string.screen_create_room_error_creating_room) },
onRetry = { state.eventSink(ConfigureRoomEvents.CreateRoom(state.config)) },

View file

@ -39,6 +39,7 @@ import io.element.android.compound.tokens.generated.CompoundIcons
import io.element.android.features.createroom.impl.R
import io.element.android.features.createroom.impl.components.UserListView
import io.element.android.libraries.designsystem.components.async.AsyncActionView
import io.element.android.libraries.designsystem.components.async.AsyncActionViewDefaults
import io.element.android.libraries.designsystem.components.button.BackButton
import io.element.android.libraries.designsystem.icons.CompoundDrawables
import io.element.android.libraries.designsystem.preview.ElementPreview
@ -95,7 +96,11 @@ fun CreateRoomRootView(
AsyncActionView(
async = state.startDmAction,
progressText = stringResource(CommonStrings.common_starting_chat),
progressDialog = {
AsyncActionViewDefaults.ProgressDialog(
progressText = stringResource(CommonStrings.common_starting_chat),
)
},
onSuccess = { onOpenDM(it) },
errorMessage = { stringResource(R.string.screen_start_chat_error_starting_chat) },
onRetry = {

View file

@ -42,7 +42,6 @@ import androidx.compose.ui.unit.dp
import io.element.android.compound.theme.ElementTheme
import io.element.android.features.messages.impl.R
import io.element.android.libraries.architecture.AsyncAction
import io.element.android.libraries.architecture.AsyncData
import io.element.android.libraries.designsystem.components.async.AsyncActionView
import io.element.android.libraries.designsystem.components.button.BackButton
import io.element.android.libraries.designsystem.preview.ElementPreview
@ -66,7 +65,7 @@ fun ReportMessageView(
val isSending = state.result is AsyncAction.Loading
AsyncActionView(
async = state.result,
showProgressDialog = false,
progressDialog = {},
onSuccess = { onBackClicked() },
errorMessage = { stringResource(CommonStrings.error_unknown) },
onErrorDismiss = { state.eventSink(ReportMessageEvents.ClearError) }

View file

@ -57,6 +57,7 @@ import io.element.android.libraries.matrix.ui.components.AvatarActionBottomSheet
import io.element.android.libraries.matrix.ui.components.EditableAvatarView
import io.element.android.libraries.permissions.api.PermissionsView
import io.element.android.compound.theme.ElementTheme
import io.element.android.libraries.designsystem.components.async.AsyncActionViewDefaults
import io.element.android.libraries.ui.strings.CommonStrings
import kotlinx.coroutines.launch
@ -149,7 +150,11 @@ fun EditUserProfileView(
AsyncActionView(
async = state.saveAction,
progressText = stringResource(R.string.screen_edit_profile_updating_details),
progressDialog = {
AsyncActionViewDefaults.ProgressDialog(
progressText = stringResource(R.string.screen_edit_profile_updating_details),
)
},
onSuccess = { onProfileEdited() },
errorTitle = { stringResource(R.string.screen_edit_profile_error_title) },
errorMessage = { stringResource(R.string.screen_edit_profile_error) },

View file

@ -152,7 +152,7 @@ fun BugReportView(
AsyncActionView(
async = state.sending,
showProgressDialog = false,
progressDialog = { },
onSuccess = {
eventSink(BugReportEvents.ResetAll)
onDone()

View file

@ -61,6 +61,7 @@ import io.element.android.libraries.matrix.ui.components.AvatarActionBottomSheet
import io.element.android.libraries.matrix.ui.components.EditableAvatarView
import io.element.android.libraries.permissions.api.PermissionsView
import io.element.android.compound.theme.ElementTheme
import io.element.android.libraries.designsystem.components.async.AsyncActionViewDefaults
import io.element.android.libraries.ui.strings.CommonStrings
import kotlinx.coroutines.launch
@ -173,7 +174,11 @@ fun RoomDetailsEditView(
AsyncActionView(
async = state.saveAction,
progressText = stringResource(R.string.screen_room_details_updating_room),
progressDialog = {
AsyncActionViewDefaults.ProgressDialog(
progressText = stringResource(R.string.screen_room_details_updating_room),
)
},
onSuccess = { onRoomEdited() },
errorMessage = { stringResource(R.string.screen_room_details_edition_error) },
onErrorDismiss = { state.eventSink(RoomDetailsEditEvents.CancelSaveChanges) }

View file

@ -31,7 +31,6 @@ import io.element.android.anvilannotations.ContributesNode
import io.element.android.features.roomdetails.impl.R
import io.element.android.libraries.androidutils.system.startSharePlainTextIntent
import io.element.android.libraries.architecture.AsyncAction
import io.element.android.libraries.architecture.AsyncData
import io.element.android.libraries.architecture.NodeInputs
import io.element.android.libraries.architecture.inputs
import io.element.android.libraries.di.RoomScope

View file

@ -34,6 +34,7 @@ import io.element.android.features.roomdetails.impl.R
import io.element.android.features.roomdetails.impl.blockuser.BlockUserDialogs
import io.element.android.features.roomdetails.impl.blockuser.BlockUserSection
import io.element.android.libraries.designsystem.components.async.AsyncActionView
import io.element.android.libraries.designsystem.components.async.AsyncActionViewDefaults
import io.element.android.libraries.designsystem.components.button.BackButton
import io.element.android.libraries.designsystem.components.list.ListItemContent
import io.element.android.libraries.designsystem.preview.ElementPreviewDark
@ -90,7 +91,11 @@ fun RoomMemberDetailsView(
}
AsyncActionView(
async = state.startDmActionState,
progressText = stringResource(CommonStrings.common_starting_chat),
progressDialog = {
AsyncActionViewDefaults.ProgressDialog(
progressText = stringResource(CommonStrings.common_starting_chat),
)
},
onSuccess = onDMStarted,
errorMessage = { stringResource(R.string.screen_start_chat_error_starting_chat) },
onRetry = { state.eventSink(RoomMemberDetailsEvents.StartDM) },

View file

@ -21,7 +21,6 @@ import io.element.android.features.securebackup.impl.setup.views.RecoveryKeyUser
import io.element.android.features.securebackup.impl.setup.views.RecoveryKeyViewState
import io.element.android.features.securebackup.impl.setup.views.aFormattedRecoveryKey
import io.element.android.libraries.architecture.AsyncAction
import io.element.android.libraries.architecture.AsyncData
open class SecureBackupEnterRecoveryKeyStateProvider : PreviewParameterProvider<SecureBackupEnterRecoveryKeyState> {
override val values: Sequence<SecureBackupEnterRecoveryKeyState>

View file

@ -46,7 +46,7 @@ fun SecureBackupEnterRecoveryKeyView(
AsyncActionView(
async = state.submitAction,
onSuccess = { onDone() },
showProgressDialog = false,
progressDialog = { },
errorTitle = { stringResource(id = R.string.screen_recovery_key_confirm_error_title) },
errorMessage = { stringResource(id = R.string.screen_recovery_key_confirm_error_content) },
onErrorDismiss = { state.eventSink(SecureBackupEnterRecoveryKeyEvents.ClearDialog) },