diff --git a/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersCard.kt b/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersCard.kt index 63eac31f..057a55b1 100644 --- a/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersCard.kt +++ b/common/src/commonMain/kotlin/dev/msfjarvis/claw/common/posts/LobstersCard.kt @@ -16,6 +16,7 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.requiredSize +import androidx.compose.foundation.layout.width import androidx.compose.foundation.shape.CircleShape import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material.ripple.rememberRipple @@ -50,9 +51,14 @@ fun LobstersCard( modifier: Modifier = Modifier, ) { var localSavedState by remember(post, isSaved) { mutableStateOf(isSaved) } - Box(modifier = modifier.clickable { postActions.viewPost(post.url, post.commentsUrl) }) { + Box( + modifier = + modifier + .fillMaxWidth() + .clickable { postActions.viewPost(post.url, post.commentsUrl) } + .padding(start = 16.dp, top = 16.dp, end = 4.dp, bottom = 16.dp), + ) { Row( - modifier = Modifier.fillMaxWidth().padding(16.dp), horizontalArrangement = Arrangement.spacedBy(8.dp), verticalAlignment = Alignment.CenterVertically, ) { @@ -61,7 +67,7 @@ fun LobstersCard( post = post, ) Column( - modifier = Modifier.weight(0.15f).fillMaxHeight(), + modifier = Modifier.fillMaxHeight(), verticalArrangement = Arrangement.spacedBy(8.dp), horizontalAlignment = Alignment.CenterHorizontally, ) { @@ -77,7 +83,7 @@ fun LobstersCard( postActions.toggleSave(post) }, ) - Divider() + Divider(modifier = Modifier.width(48.dp)) CommentsButton( modifier = Modifier.combinedClickable( @@ -148,27 +154,31 @@ fun SaveButton( modifier: Modifier = Modifier, ) { Crossfade(targetState = isSaved) { saved -> + Box(modifier = modifier.padding(12.dp)) { + Icon( + painter = if (saved) heartIcon else heartBorderIcon, + tint = MaterialTheme.colorScheme.secondary, + contentDescription = if (saved) "Remove from saved posts" else "Add to saved posts", + modifier = Modifier.align(Alignment.Center) + ) + } + } +} + +@Composable +fun CommentsButton( + modifier: Modifier = Modifier, +) { + Box(modifier = modifier.padding(12.dp)) { Icon( - painter = if (saved) heartIcon else heartBorderIcon, + painter = commentIcon, tint = MaterialTheme.colorScheme.secondary, - contentDescription = if (saved) "Remove from saved posts" else "Add to saved posts", - modifier = modifier.padding(12.dp), + contentDescription = "Open comments", + modifier = Modifier.align(Alignment.Center), ) } } -@Composable -fun CommentsButton( - modifier: Modifier = Modifier, -) { - Icon( - painter = commentIcon, - tint = MaterialTheme.colorScheme.secondary, - contentDescription = "Open comments", - modifier = modifier.padding(12.dp), - ) -} - @Composable fun TagRow( tags: List,