Use AsyncView in NotificationSettingsView
This commit is contained in:
parent
1e09d9c65f
commit
cc5321f65a
1 changed files with 8 additions and 15 deletions
|
|
@ -24,9 +24,8 @@ import androidx.compose.ui.res.stringResource
|
|||
import androidx.compose.ui.tooling.preview.PreviewParameter
|
||||
import androidx.lifecycle.Lifecycle
|
||||
import io.element.android.libraries.androidutils.system.startNotificationSettingsIntent
|
||||
import io.element.android.libraries.architecture.Async
|
||||
import io.element.android.libraries.designsystem.atomic.molecules.DialogLikeBannerMolecule
|
||||
import io.element.android.libraries.designsystem.components.ProgressDialog
|
||||
import io.element.android.libraries.designsystem.components.async.AsyncView
|
||||
import io.element.android.libraries.designsystem.components.dialogs.ErrorDialog
|
||||
import io.element.android.libraries.designsystem.components.preferences.PreferenceCategory
|
||||
import io.element.android.libraries.designsystem.components.preferences.PreferencePage
|
||||
|
|
@ -79,19 +78,13 @@ fun NotificationSettingsView(
|
|||
// onCallsNotificationsChanged = { state.eventSink(NotificationSettingsEvents.SetCallNotificationsEnabled(it)) },
|
||||
)
|
||||
}
|
||||
when (state.changeNotificationSettingAction) {
|
||||
is Async.Loading -> {
|
||||
ProgressDialog()
|
||||
}
|
||||
is Async.Failure -> {
|
||||
ErrorDialog(
|
||||
title = stringResource(CommonStrings.dialog_title_error),
|
||||
content = stringResource(CommonStrings.screen_notification_settings_edit_failed_updating_default_mode),
|
||||
onDismiss = { state.eventSink(NotificationSettingsEvents.ClearNotificationChangeError) },
|
||||
)
|
||||
}
|
||||
else -> Unit
|
||||
}
|
||||
val errorMessage = stringResource(CommonStrings.screen_notification_settings_edit_failed_updating_default_mode)
|
||||
AsyncView(
|
||||
async = state.changeNotificationSettingAction,
|
||||
errorTransform = { errorMessage },
|
||||
onErrorDismiss = { state.eventSink(NotificationSettingsEvents.ClearNotificationChangeError) },
|
||||
onSuccess = {},
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue