Draft : branch reply mode

This commit is contained in:
ganfra 2024-06-21 12:40:16 +02:00
parent 5597a1743a
commit 6ac7ab84ce
5 changed files with 31 additions and 32 deletions

View file

@ -582,22 +582,20 @@ class RustTimeline(
}
}
override suspend fun loadReplyDetails(eventId: EventId): Result<InReplyTo> = withContext(dispatcher) {
runCatching {
val timelineItem = _timelineItems.value.firstOrNull { timelineItem ->
timelineItem is MatrixTimelineItem.Event && timelineItem.eventId == eventId
} as? MatrixTimelineItem.Event
override suspend fun loadReplyDetails(eventId: EventId): InReplyTo = withContext(dispatcher) {
val timelineItem = _timelineItems.value.firstOrNull { timelineItem ->
timelineItem is MatrixTimelineItem.Event && timelineItem.eventId == eventId
} as? MatrixTimelineItem.Event
if (timelineItem != null) {
InReplyTo.Ready(
eventId = eventId,
content = timelineItem.event.content,
senderId = timelineItem.event.sender,
senderProfile = timelineItem.event.senderProfile,
)
} else {
inner.loadReplyDetails(eventId.value).use(inReplyToMapper::map)
}
if (timelineItem != null) {
InReplyTo.Ready(
eventId = eventId,
content = timelineItem.event.content,
senderId = timelineItem.event.sender,
senderProfile = timelineItem.event.senderProfile,
)
} else {
inner.loadReplyDetails(eventId.value).use(inReplyToMapper::map)
}
}
}