Implement disappearing messages
- Expose message expiry data to GUI
- Show time remaining indicator on message bubble
- Don't mark
ExpirationTimerUpdatemessages as expiring - Don't mark
Group changed by xxxmessages as expiring - Expose session expiry data to GUI
- Notify backend when an expiring message has been shown for the first time
- Make backend actually delete messages
- Delete or mark-as-deleted? Signal Desktop doesn't leave the message bubble behind.
- Attachments too? Needs to be tested.
- Add expiry icon to
SessionDelegate - Add expiry
periodicon toConversationPage - Add expiry
periodicon toGroupProfilePage - Split
GroupProfilePageintoRecipientProfilePage - Add expiry period to
DirectMessageProfilePage - Add expiry setting to
GroupProfilePage - Better trigger for the "read" signal;
currently a dim screen with open session already triggers the read- Initial detection of on-screen messages is now implemented
- Fix behavior of
ExpiringMessagesComboBox - Implement changing the expiry period to database
- Send an update message when changing expiry period
- Incoming message is not marked as read/expiring when the conversation is open (and scrolled to bottom?)
One important aspect to handle with care:
- Decide and implement handling of messages marked as disappearing before user installed the update
- We do not want to unexpectedly delete users' messages and attachments
- Essentially: after the cut-off, there should be no choice, but how to handle the previously-arrived messages?
- → Current implementation: start old messages' expiry when they are read (again), i.e. when the session is opened and the message is on the screen
Fixes #279 (closed) and #166 (closed)
- Check if this fixes any other issues
Edited by Matti Viljanen