diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/MatrixConfiguration.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/MatrixConfiguration.kt
index e56ad1e7854c58b5bc2890d76f9fee5f24ccfe35..711956361797bf47068b030c31c272ee08c55f10 100644
--- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/MatrixConfiguration.kt
+++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/MatrixConfiguration.kt
@@ -65,7 +65,7 @@ data class MatrixConfiguration(
         /**
          * Thread messages default enable/disabled value.
          */
-        val threadMessagesEnabledDefault: Boolean = true,
+        val threadMessagesEnabledDefault: Boolean = false,
         /**
          * List of network interceptors, they will be added when building an OkHttp client.
          */
diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt
index 70553359ff1a521ce6fadc486019afa02454c7d1..08530f8ef9ea1bfcae203f041b0a9345bd838c98 100644
--- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt
+++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/session/sync/handler/room/ThreadsAwarenessHandler.kt
@@ -26,13 +26,17 @@ import org.matrix.android.sdk.api.session.events.model.EventType
 import org.matrix.android.sdk.api.session.events.model.RelationType
 import org.matrix.android.sdk.api.session.events.model.getRelationContentForType
 import org.matrix.android.sdk.api.session.events.model.getRootThreadEventId
+import org.matrix.android.sdk.api.session.events.model.isImageMessage
 import org.matrix.android.sdk.api.session.events.model.isSticker
+import org.matrix.android.sdk.api.session.events.model.isVideoMessage
 import org.matrix.android.sdk.api.session.events.model.toContent
 import org.matrix.android.sdk.api.session.events.model.toModel
 import org.matrix.android.sdk.api.session.room.model.message.MessageFormat
+import org.matrix.android.sdk.api.session.room.model.message.MessageImageContent
 import org.matrix.android.sdk.api.session.room.model.message.MessageRelationContent
 import org.matrix.android.sdk.api.session.room.model.message.MessageTextContent
 import org.matrix.android.sdk.api.session.room.model.message.MessageType
+import org.matrix.android.sdk.api.session.room.model.message.MessageVideoContent
 import org.matrix.android.sdk.api.session.room.model.relation.RelationDefaultContent
 import org.matrix.android.sdk.api.session.room.send.SendState
 import org.matrix.android.sdk.api.session.sync.model.SyncResponse
@@ -328,14 +332,35 @@ internal class ThreadsAwarenessHandler @Inject constructor(
                 eventToInjectBody,
                 eventBody
         )
-
-        return MessageTextContent(
-                relatesTo = threadRelation,
-                msgType = MessageType.MSGTYPE_TEXT,
-                format = MessageFormat.FORMAT_MATRIX_HTML,
-                body = eventBody,
-                formattedBody = replyFormatted
-        ).toContent()
+        return when {
+            eventToInject.isImageMessage() -> {
+                val imageContent = eventToInject.getClearContent().toModel<MessageImageContent>()
+                MessageImageContent(
+                        relatesTo = threadRelation,
+                        msgType = MessageType.MSGTYPE_IMAGE,
+                        body = eventBody,
+                        url = imageContent?.url,
+                        encryptedFileInfo = imageContent?.encryptedFileInfo
+                ).toContent()
+            }
+            eventToInject.isVideoMessage() -> {
+                val videoContent = eventToInject.getClearContent().toModel<MessageVideoContent>()
+                MessageVideoContent(
+                        relatesTo = threadRelation,
+                        msgType = MessageType.MSGTYPE_VIDEO,
+                        body = eventBody,
+                        url = videoContent?.url,
+                        encryptedFileInfo = videoContent?.encryptedFileInfo
+                ).toContent()
+            }
+            else                           -> MessageTextContent(
+                    relatesTo = threadRelation,
+                    msgType = MessageType.MSGTYPE_TEXT,
+                    format = MessageFormat.FORMAT_MATRIX_HTML,
+                    body = eventBody,
+                    formattedBody = replyFormatted
+            ).toContent()
+        }
     }
 
     /**