diff options
author | mathieui <mathieui@mathieui.net> | 2014-04-02 21:53:12 +0200 |
---|---|---|
committer | mathieui <mathieui@mathieui.net> | 2014-04-02 21:53:12 +0200 |
commit | ace9fc6661d1d440d5c7a37553c4dff9fb525541 (patch) | |
tree | 3b0b19022ed60c68e9581bb570717429b30e2964 | |
parent | c9069ce623b54b660b20c217b7f1a1562d756c1a (diff) | |
download | poezio-ace9fc6661d1d440d5c7a37553c4dff9fb525541.tar.gz poezio-ace9fc6661d1d440d5c7a37553c4dff9fb525541.tar.bz2 poezio-ace9fc6661d1d440d5c7a37553c4dff9fb525541.tar.xz poezio-ace9fc6661d1d440d5c7a37553c4dff9fb525541.zip |
Fix #1998, #2439 (reset chat state status)
-rw-r--r-- | src/core.py | 4 | ||||
-rw-r--r-- | src/tabs/conversationtab.py | 1 | ||||
-rw-r--r-- | src/tabs/privatetab.py | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/core.py b/src/core.py index ac0c1722..b7f6ea17 100644 --- a/src/core.py +++ b/src/core.py @@ -3494,6 +3494,10 @@ class Core(object): return roster.modified() contact.error = presence['error']['type'] + ': ' + presence['error']['condition'] + # reset chat states status on presence error + tab = self.get_tab_by_name(jid.full, tabs.ConversationTab) + if tab: + tab.remote_wants_chatstates = None def on_got_offline(self, presence): """ diff --git a/src/tabs/conversationtab.py b/src/tabs/conversationtab.py index f999ddcd..ce60689c 100644 --- a/src/tabs/conversationtab.py +++ b/src/tabs/conversationtab.py @@ -406,6 +406,7 @@ class DynamicConversationTab(ConversationTab): Unlock the tab from a resource. It is now “associated” with the bare jid. """ + self.remote_wants_chatstates = None if self.locked_resource != None: self.locked_resource = None diff --git a/src/tabs/privatetab.py b/src/tabs/privatetab.py index 5599ec45..5b9d1cee 100644 --- a/src/tabs/privatetab.py +++ b/src/tabs/privatetab.py @@ -357,6 +357,7 @@ class PrivateTab(ChatTab): def deactivate(self, reason=None): self.on = False + self.remote_wants_chatstates = None if reason: self.add_message(txt=reason, typ=2) |