fix: chat message card layout (#174)

* fix: chat message card layout

* fix: chat card layout
This commit is contained in:
Diego Beraldin 2023-11-29 13:00:03 +01:00 committed by GitHub
parent d1f1ad51d9
commit 36577e29a9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 14 deletions

View File

@ -22,7 +22,9 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Path
import androidx.compose.ui.unit.dp
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.CornerSize
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.IconSize
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.Spacing
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.PostCardBody
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.ScaledContent
import com.github.diegoberaldin.raccoonforlemmy.core.utils.datetime.prettifyDate
@ -33,14 +35,14 @@ internal fun MessageCard(
date: String = "",
) {
val color = if (isMyMessage) {
MaterialTheme.colorScheme.tertiary
MaterialTheme.colorScheme.tertiaryContainer
} else {
MaterialTheme.colorScheme.secondary
MaterialTheme.colorScheme.secondaryContainer
}
val textColor = if (isMyMessage) {
MaterialTheme.colorScheme.onTertiary
MaterialTheme.colorScheme.onTertiaryContainer
} else {
MaterialTheme.colorScheme.onSecondary
MaterialTheme.colorScheme.onSecondaryContainer
}
val longDistance = Spacing.l
val mediumDistance = Spacing.s
@ -90,9 +92,8 @@ internal fun MessageCard(
) {
ScaledContent {
Column {
Text(
PostCardBody(
text = content,
color = textColor,
)
Row(
horizontalArrangement = Arrangement.spacedBy(Spacing.xxxs),
@ -101,9 +102,9 @@ internal fun MessageCard(
Spacer(modifier = Modifier.weight(1f))
if (date.isNotEmpty()) {
val buttonModifier = Modifier.size(22.dp).padding(3.dp)
val buttonModifier = Modifier.size(IconSize.m).padding(3.5.dp)
Icon(
modifier = buttonModifier.padding(1.dp),
modifier = buttonModifier,
imageVector = Icons.Default.Schedule,
contentDescription = null,
tint = textColor,

View File

@ -5,6 +5,7 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.heightIn
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.shape.RoundedCornerShape
@ -27,7 +28,6 @@ import androidx.compose.ui.graphics.FilterQuality
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.layout.onGloballyPositioned
import androidx.compose.ui.layout.positionInParent
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.unit.DpOffset
import androidx.compose.ui.unit.dp
import com.github.diegoberaldin.raccoonforlemmy.core.appearance.theme.IconSize
@ -37,6 +37,7 @@ import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.CustomI
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.Option
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.OptionId
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.PlaceholderImage
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.PostCardTitle
import com.github.diegoberaldin.raccoonforlemmy.core.commonui.components.ScaledContent
import com.github.diegoberaldin.raccoonforlemmy.core.utils.compose.onClick
import com.github.diegoberaldin.raccoonforlemmy.core.utils.compose.rememberCallback
@ -125,12 +126,13 @@ internal fun ChatCard(
)
ScaledContent {
// last message text
Text(
PostCardTitle(
modifier = Modifier.heightIn(max = 80.dp),
text = lastMessage,
maxLines = 2,
overflow = TextOverflow.Ellipsis,
style = MaterialTheme.typography.labelLarge,
color = MaterialTheme.colorScheme.onSurface.copy(alpha = 0.9f),
autoLoadImages = autoLoadImages,
onClick = rememberCallback {
onOpen?.invoke()
},
)
}