From 3b18e0245b6bcf2b3fdc45b4f2831a1f173b6f0a Mon Sep 17 00:00:00 2001
From: Taras Smakula <tarassmakula@gmail.com>
Date: Fri, 15 Dec 2023 17:33:53 +0200
Subject: [PATCH] Change relates to for media events

---
 .../feature/timeline/post/SendMessageDataSource.kt  | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/core/src/main/java/org/futo/circles/core/feature/timeline/post/SendMessageDataSource.kt b/core/src/main/java/org/futo/circles/core/feature/timeline/post/SendMessageDataSource.kt
index 9f256a565..62e402c0d 100644
--- a/core/src/main/java/org/futo/circles/core/feature/timeline/post/SendMessageDataSource.kt
+++ b/core/src/main/java/org/futo/circles/core/feature/timeline/post/SendMessageDataSource.kt
@@ -23,6 +23,7 @@ import org.matrix.android.sdk.api.session.room.getTimelineEvent
 import org.matrix.android.sdk.api.session.room.model.message.MessageImageContent
 import org.matrix.android.sdk.api.session.room.model.message.MessageType
 import org.matrix.android.sdk.api.session.room.model.relation.RelationDefaultContent
+import org.matrix.android.sdk.api.session.room.model.relation.ReplyToContent
 import org.matrix.android.sdk.api.util.Cancelable
 import org.matrix.android.sdk.api.util.CancelableBag
 import org.matrix.android.sdk.internal.util.CancelableWork
@@ -88,12 +89,22 @@ class SendMessageDataSource @Inject constructor(@ApplicationContext private val
         val additionalContent = mutableMapOf<String, Any>()
         caption?.let { additionalContent[MediaCaptionFieldKey] = it }
 
+        val relatesTo = threadEventId?.let {
+            RelationDefaultContent(
+                type = RelationType.THREAD,
+                eventId = it,
+                isFallingBack = true,
+                inReplyTo = ReplyToContent(eventId = it)
+            )
+        }
+
         return roomForMessage.sendService().sendMedia(
             content,
             compressBeforeSending,
             emptySet(),
             rootThreadEventId = threadEventId,
-            additionalContent = additionalContent
+            additionalContent = additionalContent,
+            relatesTo = relatesTo
         )
     }
 
-- 
GitLab