cmeng-git / atalk-android

xmpp/jabber client for android
Apache License 2.0
155 stars 56 forks source link

Chat messages lost after scrolling #180

Closed tengel closed 2 years ago

tengel commented 2 years ago

The chat window of a contact can be scrolled up and down when not alles messages fit on a screen. But after scrolling up and down again, the last (bottom) message is not the message received or sent last. It seems the message order is completely messed up and at least the last message is lost. The timestamps of the messages are still correct. So the message bubbles contains correct timestamps with wrong content. This happens with sent and received messages. When closing and opening the chat window, everything looks good again.

aTalk Version 2.6.2 (F-Droid) Android 7.1.2 (LineageOS 14.1)

cmeng-git commented 2 years ago

Yes, I am fully aware of this aTalk limitation, and unable to find an easy solution for the problem. Like what you have mentioned, user needs to exit/re-enter chat window to fix the problem. This happens when the user scrolls down to see history chats larger than the aTalk default history cache size. However I had not encountered the chat messages order being messed up during testing when this happen. You may try the following to see it helps. Go into settings.... a. Enable Show history b. Set the Show recent messages size to a value larger than what you would normally scroll the history chat messages.

cmeng-git commented 2 years ago

After further investigation, what you observed is really a new problem that was accidentally introduced when I was trying to fix the html clickable tags problem in version 2.5.0 release.

The new fix will be in the next aTalk release 2.6.4.

Thanks for the feedback/

cmeng-git commented 2 years ago

Just release aTalk v2.6.4.

I have also made quite a major changes to the source to resolve all the messages display issues especially when Chat History Logging option is disabled. Hopefully this does not accidentally introduce any new bug.

cmeng-git commented 2 years ago

Problem fixed in Talk v2.6.4