Benoit Marty
2026-08-10 12:12:55 +02:00
parent 650b38429c
commit 1693d325c1
3 changed files with 19 additions and 26 deletions
@@ -812,7 +812,7 @@ private fun MessageEventBubbleContent(
else -> inReplyToModifier.clickable(onClick = inReplyToClick)
}
val contentHasError = currentContentValidationState.hasError()
val contentHasError = currentContentValidationState.hasError() || inReplyTo is InReplyToDetails.Error
val borderColor = if (contentHasError) ElementTheme.colors.borderCriticalSubtle else ElementTheme.colors.separatorPrimary
val backgroundColor = if (contentHasError) ElementTheme.colors.bgCriticalSubtle else ElementTheme.colors.bgCanvasDefault
Box(
@@ -27,7 +27,7 @@ import io.element.android.compound.tokens.generated.CompoundIcons
@Composable
internal fun ContentErrorView(
title: String,
message: String,
message: String?,
modifier: Modifier = Modifier,
contentPadding: PaddingValues = PaddingValues.Zero,
onTextLayout: ((TextLayoutResult) -> Unit)? = null,
@@ -51,12 +51,14 @@ internal fun ContentErrorView(
color = ElementTheme.colors.textCriticalPrimary,
style = ElementTheme.typography.fontBodyMdMedium,
)
Text(
text = message,
color = ElementTheme.colors.textSecondary,
style = ElementTheme.typography.fontBodySmRegular,
onTextLayout = onTextLayout,
)
if (message != null) {
Text(
text = message,
color = ElementTheme.colors.textSecondary,
style = ElementTheme.typography.fontBodySmRegular,
onTextLayout = onTextLayout,
)
}
}
}
}
@@ -19,7 +19,6 @@ import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
@@ -45,6 +44,7 @@ import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.api.timeline.item.event.ProfileDetails
import io.element.android.libraries.matrix.api.timeline.item.event.getDisambiguatedDisplayName
import io.element.android.libraries.matrix.ui.components.AttachmentThumbnail
import io.element.android.libraries.matrix.ui.media.contentvalidation.ContentErrorView
import io.element.android.libraries.matrix.ui.media.contentvalidation.ContentValidationValue
import io.element.android.libraries.matrix.ui.media.contentvalidation.InvalidContentView
import io.element.android.libraries.matrix.ui.media.contentvalidation.NotFoundContentView
@@ -77,7 +77,7 @@ fun InReplyToView(
else -> ReplyToLoadingContent(modifier = modifier)
}
is InReplyToDetails.Error ->
ReplyToErrorContent(maxLines = maxLines, modifier = modifier)
ReplyToErrorContent(modifier = modifier)
is InReplyToDetails.Loading ->
ReplyToLoadingContent(modifier = modifier)
}
@@ -150,24 +150,15 @@ private fun ReplyToLoadingContent(
@Composable
private fun ReplyToErrorContent(
maxLines: Int,
modifier: Modifier = Modifier,
) {
val paddings = PaddingValues(horizontal = 12.dp, vertical = 4.dp)
Row(
modifier
.background(ElementTheme.colors.bgCanvasDefault)
.padding(paddings)
) {
Text(
text = stringResource(id = CommonStrings.error_message_not_found),
style = ElementTheme.typography.fontBodyMdRegular,
fontStyle = FontStyle.Italic,
color = ElementTheme.colors.textSecondary,
maxLines = maxLines,
overflow = TextOverflow.Ellipsis,
)
}
ContentErrorView(
title = stringResource(CommonStrings.error_message_not_found),
message = null,
modifier = modifier,
contentPadding = PaddingValues(vertical = 4.dp, horizontal = 8.dp),
onTextLayout = null,
)
}
@Composable