FlowStepPage: make onBackClicked nullable and remove canGoBack.
This commit is contained in:
committed by
Benoit Marty
parent
96c81999a3
commit
6d8386307b
@@ -58,7 +58,6 @@ fun LogoutView(
|
||||
val eventSink = state.eventSink
|
||||
|
||||
FlowStepPage(
|
||||
canGoBack = true,
|
||||
onBackClicked = onBackClicked,
|
||||
title = title(state),
|
||||
subTitle = subtitle(state),
|
||||
|
||||
@@ -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),
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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),
|
||||
|
||||
@@ -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,
|
||||
|
||||
@@ -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",
|
||||
|
||||
Reference in New Issue
Block a user