summaryrefslogtreecommitdiff
path: root/src/core.py
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2014-02-01 19:10:50 +0100
committermathieui <mathieui@mathieui.net>2014-02-01 19:10:50 +0100
commit7c0cf0c8beaf3f0f8a743a10e0e3963c94c14bd3 (patch)
treeae680de5339bebd0920430b6b6bd0511069088a7 /src/core.py
parent3fe044d5b89156bdc087af514d53603173eaa365 (diff)
downloadpoezio-7c0cf0c8beaf3f0f8a743a10e0e3963c94c14bd3.tar.gz
poezio-7c0cf0c8beaf3f0f8a743a10e0e3963c94c14bd3.tar.bz2
poezio-7c0cf0c8beaf3f0f8a743a10e0e3963c94c14bd3.tar.xz
poezio-7c0cf0c8beaf3f0f8a743a10e0e3963c94c14bd3.zip
Fix #2441 (don’t send chatstates in a non-chatstate conv)
Also enable chatstates when we receive them from our contacts.
Diffstat (limited to 'src/core.py')
-rw-r--r--src/core.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/core.py b/src/core.py
index 766061bd..169df31f 100644
--- a/src/core.py
+++ b/src/core.py
@@ -3272,6 +3272,7 @@ class Core(object):
identifier=message['id'],
jid=message['from'],
typ=1)
+
if tab.remote_wants_chatstates is None:
if message['chat_state']:
tab.remote_wants_chatstates = True
@@ -3317,6 +3318,7 @@ class Core(object):
tab = self.get_conversation_by_jid(message['from'], False)
if not tab:
return False
+ tab.remote_wants_chatstates = True
self.events.trigger('normal_chatstate', message, tab)
tab.chatstate = state
if state == 'gone' and isinstance(tab, tabs.DynamicConversationTab):
@@ -3333,6 +3335,7 @@ class Core(object):
tab = self.get_tab_by_name(message['from'].full, tabs.PrivateTab)
if not tab:
return
+ tab.remote_wants_chatstates = True
self.events.trigger('private_chatstate', message, tab)
tab.chatstate = state
if tab == self.current_tab():