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(
title = stringResource(id = R.string.preferences_app_protection__phone_number),
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)
) { contentPadding ->
Box(modifier = Modifier.padding(contentPadding)) {

Wyświetl plik

@ -1,6 +1,8 @@
package org.signal.core.ui
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
@ -10,9 +12,14 @@ import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
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.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import org.signal.core.ui.theme.SignalTheme
@OptIn(ExperimentalMaterial3Api::class)
object Scaffolds {
@ -20,7 +27,7 @@ object Scaffolds {
fun Settings(
title: String,
onNavigationClick: () -> Unit,
painter: Painter,
navigationIconPainter: Painter,
modifier: Modifier = Modifier,
navigationContentDescription: String? = null,
content: @Composable (PaddingValues) -> Unit
@ -40,7 +47,7 @@ object Scaffolds {
Modifier.padding(end = 16.dp)
) {
Icon(
painter = painter,
painter = navigationIconPainter,
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")
}
}
}
}