diff options
author | Kali Kaneko <kali@leap.se> | 2013-09-02 00:53:01 +0200 |
---|---|---|
committer | Kali Kaneko <kali@leap.se> | 2013-09-02 00:53:01 +0200 |
commit | 39c0bc2671910f46ec565f57ce450438a51bb858 (patch) | |
tree | 876c46eff48980c9f1645931b394f1f96d7eeb4c /src/leap/mail/imap | |
parent | c80eaa6d594092d02f4739a7db85551ac229957c (diff) |
Send UNREAD event to UI when flag changes.
Closes: #3662
Diffstat (limited to 'src/leap/mail/imap')
-rw-r--r-- | src/leap/mail/imap/server.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/leap/mail/imap/server.py b/src/leap/mail/imap/server.py index cfcb3d6..ae76833 100644 --- a/src/leap/mail/imap/server.py +++ b/src/leap/mail/imap/server.py @@ -35,6 +35,8 @@ from twisted.python import log #import u1db +from leap.common import events as leap_events +from leap.common.events.events_pb2 import IMAP_UNREAD_MAIL from leap.common.check import leap_assert, leap_assert_type from leap.soledad.client import Soledad @@ -1405,6 +1407,13 @@ class SoledadMailbox(WithMsgFields): result.append((msg_id, msg)) return tuple(result) + def _signal_unread_to_ui(self): + """ + Sends unread event to ui. + """ + leap_events.signal( + IMAP_UNREAD_MAIL, str(self.getUnseenCount())) + def store(self, messages, flags, mode, uid): """ Sets the flags of one or more messages. @@ -1455,6 +1464,7 @@ class SoledadMailbox(WithMsgFields): self._update(msg.setFlags(flags)) result[msg_id] = msg.getFlags() + self._signal_unread_to_ui() return result def close(self): |