fix receiving single messages
This commit is contained in:
parent
b801667628
commit
cab5228220
|
@ -2717,7 +2717,14 @@ class RosterWindow:
|
||||||
return True
|
return True
|
||||||
if obj.mtype not in ('normal', 'chat'):
|
if obj.mtype not in ('normal', 'chat'):
|
||||||
return
|
return
|
||||||
if obj.session.control:
|
if obj.mtype == 'normal' and obj.popup:
|
||||||
|
# it's single message to be autopopuped
|
||||||
|
dialogs.SingleMessageWindow(obj.conn.name, obj.jid,
|
||||||
|
action='receive', from_whom=obj.jid, subject=obj.subject,
|
||||||
|
message=obj.msgtxt, resource=obj.resource, session=obj.session,
|
||||||
|
form_node=obj.form_node)
|
||||||
|
return
|
||||||
|
if obj.session.control and obj.mtype == 'chat':
|
||||||
typ = ''
|
typ = ''
|
||||||
if obj.mtype == 'error':
|
if obj.mtype == 'error':
|
||||||
typ = 'error'
|
typ = 'error'
|
||||||
|
@ -2734,7 +2741,7 @@ class RosterWindow:
|
||||||
if not pw or (pw.get_active_control() and obj.session.control \
|
if not pw or (pw.get_active_control() and obj.session.control \
|
||||||
== pw.get_active_control() and pw.is_active() and end):
|
== pw.get_active_control() and pw.is_active() and end):
|
||||||
gajim.logger.set_read_messages([obj.msg_id])
|
gajim.logger.set_read_messages([obj.msg_id])
|
||||||
elif obj.popup:
|
elif obj.popup and obj.mtype == 'chat':
|
||||||
contact = gajim.contacts.get_contact(obj.conn.name, obj.jid)
|
contact = gajim.contacts.get_contact(obj.conn.name, obj.jid)
|
||||||
obj.session.control = gajim.interface.new_chat(contact,
|
obj.session.control = gajim.interface.new_chat(contact,
|
||||||
obj.conn.name, session=obj.session)
|
obj.conn.name, session=obj.session)
|
||||||
|
|
|
@ -237,7 +237,8 @@ class ChatControlSession(stanza_session.EncryptedStanzaSession):
|
||||||
obj.show_in_systray = notify.get_show_in_systray(event_type,
|
obj.show_in_systray = notify.get_show_in_systray(event_type,
|
||||||
self.conn.name, contact)
|
self.conn.name, contact)
|
||||||
|
|
||||||
if not self.control:
|
if (not self.control and obj.mtype != 'normal') or \
|
||||||
|
(obj.mtype != 'normal' and not obj.popup):
|
||||||
event = gajim.events.create_event(type_, (obj.msgtxt, obj.subject,
|
event = gajim.events.create_event(type_, (obj.msgtxt, obj.subject,
|
||||||
obj.mtype, obj.timestamp, obj.encrypted, obj.resource,
|
obj.mtype, obj.timestamp, obj.encrypted, obj.resource,
|
||||||
obj.msg_id, obj.xhtml, self, obj.form_node, obj.displaymarking,
|
obj.msg_id, obj.xhtml, self, obj.form_node, obj.displaymarking,
|
||||||
|
|
Loading…
Reference in New Issue