Philipp Hörist pushed to branch master at gajim / gajim
Commits:
b80315b8 by lovetox at 2022-08-14T17:10:52+02:00
fix: ChatList: Update status for private chats correctly
The status was not updated when the corresponding MUC was left.
- - - - -
1 changed file:
- gajim/gtk/chat_list.py
Changes:
=====================================
gajim/gtk/chat_list.py
=====================================
@@ -570,6 +570,10 @@ def __init__(self, workspace_id: str, account: str, jid:
JID, type_: str,
self.contact.connect('user-status-show-changed',
self._on_muc_user_update)
+ self.contact.room.connect('room-left', self._on_muc_update)
+ self.contact.room.connect('room-destroyed', self._on_muc_update)
+ self.contact.room.connect('room-kicked', self._on_muc_update)
+
self.contact_name: str = self.contact.name
self.timestamp: float = 0
self.stanza_id: Optional[str] = None
@@ -777,6 +781,13 @@ def _on_muc_user_update(self,
) -> None:
self.update_avatar()
+ def _on_muc_update(self,
+ _contact: GroupchatContact,
+ _signal_name: str,
+ *args: Any
+ ) -> None:
+ self.update_avatar()
+
def update_avatar(self) -> None:
scale = self.get_scale_factor()
surface = self.contact.get_avatar(AvatarSize.ROSTER, scale)
@@ -908,6 +919,9 @@ def _on_state_flags_changed(self,
def _on_destroy(self, _row: ChatRow) -> None:
self.contact.disconnect_all_from_obj(self)
+ if isinstance(self.contact, GroupchatParticipant):
+ self.contact.room.disconnect_all_from_obj(self)
+
app.check_finalize(self)
def _on_close_button_clicked(self, _button: Gtk.Button) -> None:
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/b80315b8c7b8417043f1e69757610f316e4c1170
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/commit/b80315b8c7b8417043f1e69757610f316e4c1170
You're receiving this email because of your account on dev.gajim.org.
_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits