Browse Source

FlowStepPage: make `onBackClicked` nullable and remove `canGoBack`.

pull/1737/head
Benoit Marty 11 months ago committed by Benoit Marty
parent
commit
7bd2ccd2a9
  1. 1
      features/logout/impl/src/main/kotlin/io/element/android/features/logout/impl/LogoutView.kt
  2. 1
      features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/disable/SecureBackupDisableView.kt
  3. 1
      features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enable/SecureBackupEnableView.kt
  4. 1
      features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enter/SecureBackupEnterRecoveryKeyView.kt
  5. 3
      features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupView.kt
  6. 12
      libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/pages/FlowStepPage.kt

1
features/logout/impl/src/main/kotlin/io/element/android/features/logout/impl/LogoutView.kt

@ -58,7 +58,6 @@ fun LogoutView( @@ -58,7 +58,6 @@ fun LogoutView(
val eventSink = state.eventSink
FlowStepPage(
canGoBack = true,
onBackClicked = onBackClicked,
title = title(state),
subTitle = subtitle(state),

1
features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/disable/SecureBackupDisableView.kt

@ -56,7 +56,6 @@ fun SecureBackupDisableView( @@ -56,7 +56,6 @@ fun SecureBackupDisableView(
}
FlowStepPage(
modifier = modifier,
canGoBack = true,
onBackClicked = onBackClicked,
title = stringResource(id = R.string.screen_key_backup_disable_title),
subTitle = stringResource(id = R.string.screen_key_backup_disable_description),

1
features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enable/SecureBackupEnableView.kt

@ -46,7 +46,6 @@ fun SecureBackupEnableView( @@ -46,7 +46,6 @@ fun SecureBackupEnableView(
}
FlowStepPage(
modifier = modifier,
canGoBack = true,
onBackClicked = onBackClicked,
title = stringResource(id = R.string.screen_chat_backup_key_backup_action_enable),
iconResourceId = CommonDrawables.ic_key,

1
features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/enter/SecureBackupEnterRecoveryKeyView.kt

@ -50,7 +50,6 @@ fun SecureBackupEnterRecoveryKeyView( @@ -50,7 +50,6 @@ fun SecureBackupEnterRecoveryKeyView(
FlowStepPage(
modifier = modifier,
canGoBack = true,
onBackClicked = onBackClicked,
iconResourceId = CommonDrawables.ic_key,
title = stringResource(id = R.string.screen_recovery_key_confirm_title),

3
features/securebackup/impl/src/main/kotlin/io/element/android/features/securebackup/impl/setup/SecureBackupSetupView.kt

@ -48,8 +48,7 @@ fun SecureBackupSetupView( @@ -48,8 +48,7 @@ fun SecureBackupSetupView(
) {
FlowStepPage(
modifier = modifier,
canGoBack = state.canGoBack(),
onBackClicked = onBackClicked,
onBackClicked = onBackClicked.takeIf { state.canGoBack() },
title = title(state),
subTitle = subtitle(state),
iconResourceId = CommonDrawables.ic_key,

12
libraries/designsystem/src/main/kotlin/io/element/android/libraries/designsystem/atomic/pages/FlowStepPage.kt

@ -40,7 +40,7 @@ import io.element.android.libraries.theme.ElementTheme @@ -40,7 +40,7 @@ import io.element.android.libraries.theme.ElementTheme
/**
* A Page with:
* - a top bar as TobAppBar with optional back button
* - a top bar as TobAppBar with optional back button (displayed if [onBackClicked] is not null)
* - a header, as IconTitleSubtitleMolecule
* - a content.
* - a footer, as ButtonColumnMolecule
@ -48,24 +48,23 @@ import io.element.android.libraries.theme.ElementTheme @@ -48,24 +48,23 @@ import io.element.android.libraries.theme.ElementTheme
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun FlowStepPage(
canGoBack: Boolean,
onBackClicked: () -> Unit,
iconResourceId: Int?,
title: String,
modifier: Modifier = Modifier,
onBackClicked: (() -> Unit)? = null,
subTitle: String? = null,
content: @Composable () -> Unit = {},
buttons: @Composable ColumnScope.() -> Unit = {},
) {
BackHandler(enabled = canGoBack) {
onBackClicked()
BackHandler(enabled = onBackClicked != null) {
onBackClicked?.invoke()
}
HeaderFooterPage(
modifier = modifier,
topBar = {
TopAppBar(
navigationIcon = {
if (canGoBack) {
if (onBackClicked != null) {
BackButton(onClick = onBackClicked)
}
},
@ -94,7 +93,6 @@ fun FlowStepPage( @@ -94,7 +93,6 @@ fun FlowStepPage(
@Composable
internal fun FlowStepPagePreview() = ElementPreview {
FlowStepPage(
canGoBack = true,
onBackClicked = {},
title = "Title",
subTitle = "Subtitle",

Loading…
Cancel
Save