You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a message is edited (no matter by whom and in which client), the edit shows up fine in libQuotient based clients if it comes in live (as new messages, not historical messages). after restarting the client, the message shows up in the unedited form.
AFAICT the replacement is only processed in Room::Private::addNewMessageEvents but not in Room::Private::addHistoricalMessageEvents, which would explain this.
The text was updated successfully, but these errors were encountered:
The assumption has always been that once the message is edited, it is the homeserver's job to serve the already edited message instead of clients having to re-aggregate all contributing events: https://spec.matrix.org/latest/client-server-api/#aggregations-of-child-events (note the presence of /messages in the list of endpoints where the server should aggregate things).
That being said, should is not must, and adding invocation of processReplacement() to addHistoricalMessageEvents() (or rather, the common code called from both addNew* and addHistorical*) would make sense to account for homeserver implementations with less comprehensive aggregation logic.
Happens both in NeoChat and Quaternion.
When a message is edited (no matter by whom and in which client), the edit shows up fine in libQuotient based clients if it comes in live (as new messages, not historical messages). after restarting the client, the message shows up in the unedited form.
AFAICT the replacement is only processed in
Room::Private::addNewMessageEvents
but not inRoom::Private::addHistoricalMessageEvents
, which would explain this.The text was updated successfully, but these errors were encountered: