From 1287135ebbe8420de44ab73ce6a553b17067dfdb Mon Sep 17 00:00:00 2001 From: fiaxh Date: Sat, 14 Sep 2019 16:08:08 +0200 Subject: Improve conversation unread status detection --- libdino/src/service/counterpart_interaction_manager.vala | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libdino/src/service/counterpart_interaction_manager.vala') diff --git a/libdino/src/service/counterpart_interaction_manager.vala b/libdino/src/service/counterpart_interaction_manager.vala index 7da65650..5ff74eb7 100644 --- a/libdino/src/service/counterpart_interaction_manager.vala +++ b/libdino/src/service/counterpart_interaction_manager.vala @@ -89,6 +89,8 @@ public class CounterpartInteractionManager : StreamInteractionModule, Object { if (conversation == null) return; Entities.Message? message = stream_interactor.get_module(MessageStorage.IDENTITY).get_message_by_stanza_id(stanza_id, conversation); if (message == null) return; + // Don't move read marker backwards because we get old info from another client + if (conversation.read_up_to.local_time.compare(message.local_time) > 0) return; conversation.read_up_to = message; } else { // We received a marker from someone else. Search the respective message and mark it. -- cgit v1.2.3-54-g00ecf