mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-02 21:32:34 +00:00
Add threadInfo field to message like timeline events (#5930)
* Add `threadInfo` field to message like timeline events: - Polls - Stickers - UTDs * Add missing cases for `EventTimeline.threadInfo()`
This commit is contained in:
committed by
GitHub
parent
1d0b493869
commit
105bab1758
+5
-2
@@ -26,7 +26,7 @@ data class MessageContent(
|
||||
val inReplyTo: InReplyTo?,
|
||||
val isEdited: Boolean,
|
||||
val threadInfo: EventThreadInfo?,
|
||||
val type: MessageType
|
||||
val type: MessageType,
|
||||
) : EventContent
|
||||
|
||||
data object RedactedContent : EventContent
|
||||
@@ -36,6 +36,7 @@ data class StickerContent(
|
||||
val body: String?,
|
||||
val info: ImageInfo,
|
||||
val source: MediaSource,
|
||||
val threadInfo: EventThreadInfo?,
|
||||
) : EventContent {
|
||||
val bestDescription: String
|
||||
get() = body ?: filename
|
||||
@@ -49,10 +50,12 @@ data class PollContent(
|
||||
val votes: ImmutableMap<String, ImmutableList<UserId>>,
|
||||
val endTime: ULong?,
|
||||
val isEdited: Boolean,
|
||||
val threadInfo: EventThreadInfo?,
|
||||
) : EventContent
|
||||
|
||||
data class UnableToDecryptContent(
|
||||
val data: Data
|
||||
val data: Data,
|
||||
val threadInfo: EventThreadInfo?,
|
||||
) : EventContent {
|
||||
@Immutable
|
||||
sealed interface Data {
|
||||
|
||||
+7
-1
@@ -39,7 +39,13 @@ data class EventTimelineItem(
|
||||
return (content as? MessageContent)?.inReplyTo
|
||||
}
|
||||
|
||||
fun threadInfo(): EventThreadInfo? = (content as? MessageContent)?.threadInfo
|
||||
fun threadInfo(): EventThreadInfo? = when (content) {
|
||||
is MessageContent -> content.threadInfo
|
||||
is PollContent -> content.threadInfo
|
||||
is StickerContent -> content.threadInfo
|
||||
is UnableToDecryptContent -> content.threadInfo
|
||||
else -> null
|
||||
}
|
||||
|
||||
fun hasNotLoadedInReplyTo(): Boolean {
|
||||
val details = inReplyTo()
|
||||
|
||||
Reference in New Issue
Block a user