Add scaffold preview.

main
Alex Hart 2023-03-02 12:13:14 -04:00 zatwierdzone przez Greyson Parrelli
rodzic 5634e9834d
commit 8ca8e5d8f9
2 zmienionych plików z 29 dodań i 3 usunięć

Wyświetl plik

@ -39,7 +39,7 @@ class PhoneNumberPrivacySettingsFragment : ComposeFragment() {
Scaffolds.Settings( Scaffolds.Settings(
title = stringResource(id = R.string.preferences_app_protection__phone_number), title = stringResource(id = R.string.preferences_app_protection__phone_number),
onNavigationClick = onNavigationClick, onNavigationClick = onNavigationClick,
painter = painterResource(id = R.drawable.ic_arrow_left_24), navigationIconPainter = painterResource(id = R.drawable.ic_arrow_left_24),
navigationContentDescription = stringResource(id = R.string.Material3SearchToolbar__close) navigationContentDescription = stringResource(id = R.string.Material3SearchToolbar__close)
) { contentPadding -> ) { contentPadding ->
Box(modifier = Modifier.padding(contentPadding)) { Box(modifier = Modifier.padding(contentPadding)) {

Wyświetl plik

@ -1,6 +1,8 @@
package org.signal.core.ui package org.signal.core.ui
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon import androidx.compose.material3.Icon
@ -10,9 +12,14 @@ import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.painter.ColorPainter
import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import org.signal.core.ui.theme.SignalTheme
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
object Scaffolds { object Scaffolds {
@ -20,7 +27,7 @@ object Scaffolds {
fun Settings( fun Settings(
title: String, title: String,
onNavigationClick: () -> Unit, onNavigationClick: () -> Unit,
painter: Painter, navigationIconPainter: Painter,
modifier: Modifier = Modifier, modifier: Modifier = Modifier,
navigationContentDescription: String? = null, navigationContentDescription: String? = null,
content: @Composable (PaddingValues) -> Unit content: @Composable (PaddingValues) -> Unit
@ -40,7 +47,7 @@ object Scaffolds {
Modifier.padding(end = 16.dp) Modifier.padding(end = 16.dp)
) { ) {
Icon( Icon(
painter = painter, painter = navigationIconPainter,
contentDescription = navigationContentDescription contentDescription = navigationContentDescription
) )
} }
@ -52,3 +59,22 @@ object Scaffolds {
) )
} }
} }
@Preview
@Composable
fun SettingsScaffoldPreview() {
SignalTheme(isDarkMode = false) {
Scaffolds.Settings(
"Settings Scaffold",
onNavigationClick = {},
navigationIconPainter = ColorPainter(Color.Black)
) { paddingValues ->
Box(
contentAlignment = Alignment.Center,
modifier = Modifier.padding(paddingValues).fillMaxSize()
) {
Text("Content")
}
}
}
}