FlowStepPage: make onBackClicked nullable and remove canGoBack.

This commit is contained in:
Benoit Marty
2023-11-07 10:52:12 +01:00
committed by Benoit Marty
parent 96c81999a3
commit 6d8386307b
6 changed files with 6 additions and 13 deletions

View File

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

View File

@@ -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),

View File

@@ -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,

View File

@@ -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),

View File

@@ -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,

View File

@@ -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
@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(
@Composable
internal fun FlowStepPagePreview() = ElementPreview {
FlowStepPage(
canGoBack = true,
onBackClicked = {},
title = "Title",
subTitle = "Subtitle",