diff options
author | Philipp Hörist <philipp@hoerist.com> | 2023-06-06 14:32:55 +0300 |
---|---|---|
committer | Philipp Hörist <philipp@hoerist.com> | 2023-06-06 15:05:32 +0300 |
commit | 17a653624ba8b10c015229bd5c080950a56de9e7 (patch) | |
tree | a610a5b6516a9f46c59e7149f633fb7821057087 | |
parent | f2c514f317737388cad1eea374c378e4cc933e7c (diff) |
fix: ChatListRow: Always update group chat name
-rw-r--r-- | gajim/common/modules/discovery.py | 4 | ||||
-rw-r--r-- | gajim/gtk/chat_list_row.py | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gajim/common/modules/discovery.py b/gajim/common/modules/discovery.py index 1569b08fb..dd69eb89c 100644 --- a/gajim/common/modules/discovery.py +++ b/gajim/common/modules/discovery.py @@ -241,6 +241,10 @@ class Discovery(BaseModule): account=self._account, jid=result.info.jid)) + contact = self._con.get_module('Contacts').get_contact( + result.info.jid, groupchat=True) + contact.notify('disco-info-update') + yield result @as_task diff --git a/gajim/gtk/chat_list_row.py b/gajim/gtk/chat_list_row.py index ce68d9502..643b3a98a 100644 --- a/gajim/gtk/chat_list_row.py +++ b/gajim/gtk/chat_list_row.py @@ -522,6 +522,8 @@ class ChatListRow(Gtk.ListBoxRow): elif isinstance(self.contact, GroupchatContact): self.contact.connect('avatar-update', self._on_avatar_update) + self.contact.connect('disco-info-update', + self._on_disco_info_update) self.contact.connect('state-changed', self._on_muc_state_changed) self.contact.connect('mam-sync-started', self._on_mam_sync_changed) self.contact.connect('mam-sync-finished', self._on_mam_sync_changed) @@ -557,6 +559,12 @@ class ChatListRow(Gtk.ListBoxRow): ) -> None: self.update_avatar() + def _on_disco_info_update(self, + _contact: ChatContactT, + _signal_name: str + ) -> None: + self.update_name() + def _on_client_state_changed(self, *args: Any) -> None: self._update_joined_state() |