Add setting for requesting user account data.

This commit is contained in:
Clark
2023-03-23 14:39:31 -04:00
committed by Cody Henthorne
parent b194c0e84b
commit d6a9ed1a8d
18 changed files with 874 additions and 9 deletions

View File

@@ -0,0 +1,96 @@
package org.signal.core.ui
import androidx.compose.material3.Text
import androidx.compose.material3.TextButton
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.window.DialogProperties
import org.signal.core.ui.Dialogs.SimpleAlertDialog
import org.signal.core.ui.Dialogs.SimpleMessageDialog
object Dialogs {
@Composable
fun SimpleMessageDialog(
message: String,
dismiss: String,
onDismiss: () -> Unit,
modifier: Modifier = Modifier,
dismissColor: Color = Color.Unspecified,
properties: DialogProperties = DialogProperties()
) {
androidx.compose.material3.AlertDialog(
onDismissRequest = onDismiss,
text = { Text(text = message) },
confirmButton = {
TextButton(onClick = {
onDismiss()
}) {
Text(text = dismiss, color = dismissColor)
}
},
modifier = modifier,
properties = properties
)
}
@Composable
fun SimpleAlertDialog(
title: String,
body: String,
confirm: String,
dismiss: String,
onConfirm: () -> Unit,
onDismiss: () -> Unit,
modifier: Modifier = Modifier,
confirmColor: Color = Color.Unspecified,
dismissColor: Color = Color.Unspecified,
properties: DialogProperties = DialogProperties()
) {
androidx.compose.material3.AlertDialog(
onDismissRequest = onDismiss,
title = { Text(text = title) },
text = { Text(text = body) },
confirmButton = {
TextButton(onClick = {
onConfirm()
onDismiss()
}) {
Text(text = confirm, color = confirmColor)
}
},
dismissButton = {
TextButton(onClick = onDismiss) {
Text(text = dismiss, color = dismissColor)
}
},
modifier = modifier,
properties = properties
)
}
}
@Preview
@Composable
private fun AlertDialogPreview() {
SimpleAlertDialog(
title = "Title Text",
body = "Body text message",
confirm = "Confirm Button",
dismiss = "Dismiss Button",
onConfirm = {},
onDismiss = {}
)
}
@Preview
@Composable
private fun MessageDialogPreview() {
SimpleMessageDialog(
message = "Message here",
dismiss = "OK",
onDismiss = {}
)
}

View File

@@ -1,6 +1,7 @@
package org.signal.core.ui
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
@@ -17,6 +18,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.res.dimensionResource
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import org.signal.core.ui.theme.SignalTheme
object Rows {
@@ -28,7 +30,8 @@ object Rows {
fun RadioRow(
selected: Boolean,
text: String,
modifier: Modifier = Modifier
modifier: Modifier = Modifier,
label: String? = null
) {
Row(
modifier = modifier
@@ -45,10 +48,21 @@ object Rows {
modifier = Modifier.padding(end = 24.dp)
)
Text(
text = text,
style = MaterialTheme.typography.bodyLarge
)
Column {
Text(
text = text,
style = MaterialTheme.typography.bodyLarge
)
if (label != null) {
Text(
text = label,
fontSize = 14.sp,
lineHeight = 20.sp,
color = MaterialTheme.colorScheme.onSurfaceVariant
)
}
}
}
}
}
@@ -62,6 +76,7 @@ private fun RadioRowPreview() {
Rows.RadioRow(
selected,
"RadioRow",
label = "RadioRow Label",
modifier = Modifier.clickable {
selected = !selected
}