feat: add image display

This commit is contained in:
2025-06-05 21:50:39 +03:00
parent 8ac9ccfaca
commit de205b739f
@@ -48,6 +48,7 @@ import ru.risdeveau.pixeldragon.api.Event
import ru.risdeveau.pixeldragon.api.getAccountData
import ru.risdeveau.pixeldragon.api.getEventsAround
import ru.risdeveau.pixeldragon.api.getMe
import ru.risdeveau.pixeldragon.ui.item.MXCImage
@Composable
fun Room(modifier: Modifier = Modifier, rid: String) {
@@ -97,13 +98,24 @@ fun EventItem(event: Event) {
) {
Text(event.sender, maxLines = 1, fontWeight = FontWeight.Bold)
when (event.content.optString("format")) {
"org.matrix.custom.html" ->
HtmlRenderer(event.content.getString("formatted_body"))
when (val msgtype = event.content.optString("msgtype", null)) {
"m.text" -> when (event.content.optString("format")) {
"org.matrix.custom.html" ->
HtmlRenderer(event.content.getString("formatted_body"))
else -> Text(event.content.getString("body"))
else -> Text(event.content.getString("body"))
}
"m.image" ->
MXCImage(event.content.getString("url"))
null -> Text(event.content.toString(2))
else -> Text("Unknown type: $msgtype")
}
}
else -> Text(event.type,
Modifier
.padding(4.dp)