Philipp Hörist pushed to branch mainwindow at gajim / gajim
Commits: 61c6181f by lovetox at 2021-08-30T20:39:19+02:00 Fix caps update - - - - - 3 changed files: - gajim/common/modules/caps.py - gajim/common/modules/contacts.py - gajim/gtk/controls/chat.py Changes: ===================================== gajim/common/modules/caps.py ===================================== @@ -109,11 +109,9 @@ def _entity_caps(self, _con, _stanza, properties): jid = str(properties.jid) app.storage.cache.set_last_disco_info(jid, disco_info, cache_only=True) - app.nec.push_incoming_event( - NetworkEvent('caps-update', - account=self._account, - fjid=jid, - jid=properties.jid.bare)) + + contact = self._con.get_module('Contacts').get_contact(properties.jid) + contact.notify('caps-update') def _execute_task(self, task): self._log.info('Request %s from %s', task.entity.hash, task.entity.jid) @@ -160,11 +158,9 @@ def _on_disco_info(self, nbxmpp_task): for task in tasks: self._remove_task(task) self._log.info('Update %s', task.entity.jid) - app.nec.push_incoming_event( - NetworkEvent('caps-update', - account=self._account, - fjid=str(task.entity.jid), - jid=task.entity.jid.bare)) + contact = self._con.get_module('Contacts').get_contact( + task.entity.jid) + contact.notify('caps-update') def update_caps(self): if not app.account_is_connected(self._account): ===================================== gajim/common/modules/contacts.py ===================================== @@ -181,6 +181,7 @@ def add_resource(self, resource): contact.connect('presence-update', self._on_signal) contact.connect('chatstate-update', self._on_signal) contact.connect('nickname-update', self._on_signal) + contact.connect('caps-update', self._on_signal) return contact def get_resource(self, resource): ===================================== gajim/gtk/controls/chat.py ===================================== @@ -176,6 +176,7 @@ def _connect_contact_signals(self): 'chatstate-update': self._on_chatstate_update, 'nickname-update': self._on_nickname_update, 'avatar-update': self._on_avatar_update, + 'caps-update': self._on_caps_update, }) @property @@ -414,14 +415,9 @@ def _on_nickname_update(self, _contact, _signal_name): self.draw_banner_text() def _on_presence_update(self, _contact, _signal_name): - self.update_actions() self._update_avatar() - def _on_caps_update(self, event): - if self._type.is_chat and event.jid != self.contact.jid: - return - if self._type.is_privatechat and event.fjid != self.contact.jid: - return + def _on_caps_update(self, _contact, _signal_name): self.update_ui() def _on_mam_message_received(self, event): View it on GitLab: https://dev.gajim.org/gajim/gajim/-/commit/61c6181f2ba51803e07d56209745190d6f7b0c65 -- View it on GitLab: https://dev.gajim.org/gajim/gajim/-/commit/61c6181f2ba51803e07d56209745190d6f7b0c65 You're receiving this email because of your account on dev.gajim.org.
_______________________________________________ Commits mailing list Commits@gajim.org https://lists.gajim.org/cgi-bin/listinfo/commits