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