extracting chat state for chat with self should not cause markRead event. fixes #3906

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/parser/MessageParser.java | 5 +++
1 file changed, 4 insertions(+), 1 deletion(-)

Detailed changes

src/main/java/eu/siacs/conversations/parser/MessageParser.java 🔗

@@ -100,10 +100,13 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece
         ChatState state = ChatState.parse(packet);
         if (state != null && c != null) {
             final Account account = c.getAccount();
-            Jid from = packet.getFrom();
+            final Jid from = packet.getFrom();
             if (from.asBareJid().equals(account.getJid().asBareJid())) {
                 c.setOutgoingChatState(state);
                 if (state == ChatState.ACTIVE || state == ChatState.COMPOSING) {
+                    if (c.getContact().isSelf()) {
+                        return false;
+                    }
                     mXmppConnectionService.markRead(c);
                     activateGracePeriod(account);
                 }