Cleaned up ItemButton to work in both its variations

This commit is contained in:
ThomasSession 2024-09-20 10:29:11 +10:00
parent 1ff8ea0fc8
commit 3dfbd0892d
3 changed files with 19 additions and 10 deletions

View File

@ -66,21 +66,21 @@ internal fun StartConversationScreen(
icon = R.drawable.ic_message,
modifier = Modifier.contentDescription(R.string.AccessibilityId_messageNew),
onClick = delegate::onNewMessageSelected)
Divider(startIndent = LocalDimensions.current.dividerIndent)
Divider(startIndent = LocalDimensions.current.minItemButtonHeight)
ItemButton(
textId = R.string.groupCreate,
icon = R.drawable.ic_group,
modifier = Modifier.contentDescription(R.string.AccessibilityId_groupCreate),
onClick = delegate::onCreateGroupSelected
)
Divider(startIndent = LocalDimensions.current.dividerIndent)
Divider(startIndent = LocalDimensions.current.minItemButtonHeight)
ItemButton(
textId = R.string.communityJoin,
icon = R.drawable.ic_globe,
modifier = Modifier.contentDescription(R.string.AccessibilityId_communityJoin),
onClick = delegate::onJoinCommunitySelected
)
Divider(startIndent = LocalDimensions.current.dividerIndent)
Divider(startIndent = LocalDimensions.current.minItemButtonHeight)
ItemButton(
textId = R.string.sessionInviteAFriend,
icon = R.drawable.ic_invite_friend,

View File

@ -275,19 +275,17 @@ fun ItemButton(
onClick: () -> Unit
) {
TextButton(
modifier = modifier.fillMaxWidth()
.height(IntrinsicSize.Min)
.heightIn(min = minHeight),
modifier = modifier.fillMaxWidth(),
colors = colors,
onClick = onClick,
contentPadding = PaddingValues(),
shape = RectangleShape,
) {
Box(
modifier = Modifier.fillMaxHeight()
.align(Alignment.CenterVertically)
modifier = Modifier
.padding(horizontal = LocalDimensions.current.xxsSpacing)
.aspectRatio(1f),
.size(minHeight)
.align(Alignment.CenterVertically),
content = icon
)
@ -313,6 +311,18 @@ fun PreviewItemButton() {
}
}
@Preview
@Composable
fun PreviewLargeItemButton() {
PreviewTheme {
LargeItemButton(
textId = R.string.groupCreate,
icon = R.drawable.ic_group,
onClick = {}
)
}
}
@Composable
fun Cell(
modifier: Modifier = Modifier,

View File

@ -15,7 +15,6 @@ data class Dimensions(
val mediumSpacing: Dp = 36.dp,
val xlargeSpacing: Dp = 64.dp,
val dividerIndent: Dp = 60.dp,
val appBarHeight: Dp = 64.dp,
val minItemButtonHeight: Dp = 50.dp,
val minLargeItemButtonHeight: Dp = 60.dp,