From 0968da1ff76e7443c2590f4182087bb501d9c8f5 Mon Sep 17 00:00:00 2001 From: fiaxh Date: Wed, 28 Feb 2018 21:02:39 +0100 Subject: Only notify on last MAM message, only if not read fixes #293 --- libdino/src/service/message_storage.vala | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libdino/src/service/message_storage.vala') diff --git a/libdino/src/service/message_storage.vala b/libdino/src/service/message_storage.vala index 27d9504d..35e05074 100644 --- a/libdino/src/service/message_storage.vala +++ b/libdino/src/service/message_storage.vala @@ -78,6 +78,16 @@ public class MessageStorage : StreamInteractionModule, Object { return null; } + public Conversation? get_conversation_for_stanza_id(Account account, string stanza_id) { + foreach (Conversation conversation in messages.keys) { + if (!conversation.account.equals(account)) continue; + foreach (Message message in messages[conversation]) { + if (message.stanza_id == stanza_id) return conversation; + } + } + return null; + } + private void init_conversation(Conversation conversation) { if (!messages.has_key(conversation)) { messages[conversation] = new Gee.TreeSet((a, b) => { -- cgit v1.2.3