fix read receipts on edited and redacted events

master
dfsek 1 year ago
parent 4569ce3459
commit 5e0e214bfe
  1. 11
      app/src/main/java/com/dfsek/feldspar/util/TimelineEventWrapper.kt

@ -41,6 +41,9 @@ interface TimelineEventWrapper {
}
override val canRedact = false
override val receiptEvent: TimelineEvent
get() = redactionEvent
}
class Replaced(override val event: TimelineEvent, val eventWrapper: TimelineEventWrapper, val replacedBy: TimelineEvent) : TimelineEventWrapper {
@ -55,6 +58,9 @@ interface TimelineEventWrapper {
)
}
}
override val receiptEvent: TimelineEvent
get() = replacedBy
}
class Replied(override val event: TimelineEvent, val repliedTo: String) : TimelineEventWrapper {
@ -96,6 +102,9 @@ interface TimelineEventWrapper {
val event: TimelineEvent
val receiptEvent: TimelineEvent
get() = event
@Composable
fun RenderEvent(modifier: Modifier) {
Column(modifier = modifier.fillMaxWidth()) {
@ -119,7 +128,7 @@ interface TimelineEventWrapper {
@Composable
fun RenderReadReceipts(modifier: Modifier) {
Row(modifier) {
event.readReceipts.forEach {
receiptEvent.readReceipts.forEach {
Avatar(it.roomMember.avatarUrl, 18, name = it.roomMember.displayName)
}
}

Loading…
Cancel
Save