Skip to content

Conversation

@pixlwave
Copy link
Member

@pixlwave pixlwave commented Nov 26, 2025

This is an mvp attempt at #3065 to fix element-hq/element-x-ios#2338.

The PR adds a new TimelineReadReceiptTracking enum which is used in place of the track_read_receipts boolean to decide whether to enable tracking for all events, just for message-like events or to disable tracking.

When tracking is configured for message-like only, any read receipts on state events are bundled up into the previous event, using the same logic that receipts from filtered events are handled with.

  • Public API changes documented in changelogs (optional)
Before After
Screenshot 2025-11-26 at 9 53 19 am Simulator Screenshot - iPhone 17 - 2025-11-26 at 09 53 22

@pixlwave pixlwave force-pushed the doug/read-receipt-filters branch from 3470137 to 2ce1262 Compare November 26, 2025 10:36
@codecov
Copy link

codecov bot commented Nov 26, 2025

Codecov Report

❌ Patch coverage is 99.06542% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 88.66%. Comparing base (73449f4) to head (bd3b58b).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...ix-sdk-ui/src/timeline/controller/read_receipts.rs 94.11% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5900      +/-   ##
==========================================
- Coverage   88.66%   88.66%   -0.01%     
==========================================
  Files         362      362              
  Lines      104399   104447      +48     
  Branches   104399   104447      +48     
==========================================
+ Hits        92569    92606      +37     
- Misses       7499     7509      +10     
- Partials     4331     4332       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@codspeed-hq
Copy link

codspeed-hq bot commented Nov 26, 2025

CodSpeed Performance Report

Merging #5900 will not alter performance

Comparing doug/read-receipt-filters (4b903d0) with main (73449f4)

Summary

✅ 50 untouched

@pixlwave pixlwave force-pushed the doug/read-receipt-filters branch 6 times, most recently from fb8002e to 2266d0d Compare November 26, 2025 16:54
@pixlwave pixlwave changed the title Read Receipts: Allow Timelines to be configured for renderer that can't show read receipts on state events. Read Receipts: Allow Timelines to be configured to hide read receipts on state events. Nov 26, 2025
@pixlwave pixlwave force-pushed the doug/read-receipt-filters branch from 2266d0d to bd3b58b Compare November 27, 2025 22:41
@pixlwave pixlwave force-pushed the doug/read-receipt-filters branch from bd3b58b to 4b903d0 Compare November 27, 2025 23:28
@pixlwave pixlwave marked this pull request as ready for review November 27, 2025 23:28
@pixlwave pixlwave requested a review from a team as a code owner November 27, 2025 23:28
@pixlwave pixlwave requested review from Hywan and removed request for a team November 27, 2025 23:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

RRs are missing when a state event is the latest displayed event, causing them to disappear

2 participants