mirror of
https://github.com/chatmail/core.git
synced 2026-04-06 07:32:12 +03:00
When there is an outgoing message in a chat, mark all older messages in this chat as seen. Android already has a similar behavior, however, this led to the issue https://github.com/deltachat/deltachat-android/issues/2163 and should be changed back. -- From the issue description at https://github.com/deltachat/deltachat-android/issues/2163, I implemented these fixes: > Core should take care that if the last message in a chat is not fresh|noticed, no messages in the chat can be fresh. [...] Do this [...] in a function that's called at the end of fetch_new_messages(). Then dc_receive_imf() wouldn't get slower by this and we could re-use the same function for migration. So, I didn't do this inside `dc_receive_imf()` in order not to make it take even longer. This obviously has the downside of higher complexity. And I think we should implement this: > On Androd, show the unread badge when unread!=0 again (see deltachat/deltachat-android@618af02). Then the user can see that there is a chat with an unread message and click it to get rid of it. because it shouldn't be the UI's job to decide whether an unread badge is shown, but the core's.