From b85174d35ef22eea461796dd86d5e3bd5c3522ee Mon Sep 17 00:00:00 2001 From: hayyaksi <193020925+hayaksi1@users.noreply.github.com> Date: Mon, 31 Aug 2026 12:44:40 +0300 Subject: [PATCH] Only track read receipts on message-like events (#7361) Ask the SDK to track receipts on message-like events only, for the live timeline and for the focused and threaded ones, so all three agree. The disabled case for the media and pinned-event timelines is unchanged. This matches the behaviour on Element X iOS. The SDK attaches the receipt to the preceding event rather than the next one, which is the placement its API offers. --- .../android/libraries/matrix/impl/room/JoinedRustRoom.kt | 2 +- .../android/libraries/matrix/impl/room/RustRoomFactory.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt index d454d7c775..e892c62e84 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/JoinedRustRoom.kt @@ -265,7 +265,7 @@ class JoinedRustRoom( filter = filter, internalIdPrefix = internalIdPrefix, dateDividerMode = dateDividerMode, - trackReadReceipts = if (trackReadReceipts) TimelineReadReceiptTracking.ALL_EVENTS else TimelineReadReceiptTracking.DISABLED, + trackReadReceipts = if (trackReadReceipts) TimelineReadReceiptTracking.MESSAGE_LIKE_EVENTS else TimelineReadReceiptTracking.DISABLED, reportUtds = true, ) ).let { innerTimeline -> diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt index b5f9c3ee80..960509b503 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/room/RustRoomFactory.kt @@ -140,7 +140,7 @@ class RustRoomFactory( filter = timelineFilter?.let(TimelineFilter::EventFilter) ?: TimelineFilter.All, internalIdPrefix = "live", dateDividerMode = DateDividerMode.DAILY, - trackReadReceipts = TimelineReadReceiptTracking.ALL_EVENTS, + trackReadReceipts = TimelineReadReceiptTracking.MESSAGE_LIKE_EVENTS, reportUtds = true, ) )