tigase / beagle-im

(M) XMPP client for macOS based on TigaseSwift XMPP library
GNU General Public License v3.0
181 stars 21 forks source link

Unread counter in the chat list does not disappear in some rooms #149

Open truenicoco opened 9 months ago

truenicoco commented 9 months ago

Describe the bug For some of my MUCs, there is an "unread count" (the number in the circle) in the chat list that does not go away even if I scroll to the bottom of this chat.

Expected behavior Unread count should always be set to zeo

Desktop (please complete the following information):

Additional context This seems to mostly (only?) happen in bridged rooms to whatsapp. My guess is that some stanzas are wrongly considered as "normal chat messages" by beagle, maybe XEP-0444 message reactions stanzas? Another theory I have is that it could be due to the fact that the "MAM server" of these rooms has a very short retention policy, thus not letting beagle fill "all the holes in the history" and inducing the bug?

Anyway, besides my theories, the bug definitely exists (and not in other clients I use: Dino, Gajim and Cheogram).

hantu85 commented 8 months ago

Beagle marks messages as read only if last message in the chat is unread. What is expected behavior as new messages should appear at the end of the conversation log.

However, if for some reason, bridge or any other software will send older messages as unread after newer (marked as read) or will allow editing older messages (marking them as unread) it may result in the described behavior.

There are planned improvements in this area in the future version of Beagle IM and that should solve this issue.