Philipp Hörist pushed to branch newcontrol at gajim / gajim


Commits:
e24da5f9 by lovetox at 2022-08-01T22:13:19+02:00
refactor: Update GroupchatState on creation

- - - - -


1 changed file:

- gajim/gtk/groupchat_state.py


Changes:

=====================================
gajim/gtk/groupchat_state.py
=====================================
@@ -28,6 +28,7 @@ def __init__(self, contact: GroupchatContact) -> None:
         Gtk.Box.__init__(self)
         self.set_halign(Gtk.Align.CENTER)
         self.set_valign(Gtk.Align.END)
+        self.set_no_show_all(True)
 
         self._contact = contact
         self._contact.connect('state-changed', self._on_muc_state_changed)
@@ -37,29 +38,22 @@ def __init__(self, contact: GroupchatContact) -> None:
         self.add(self._ui.groupchat_state)
         self.show_all()
 
+        self._update_state(contact)
+
     def _on_muc_state_changed(self,
                               contact: GroupchatContact,
                               _signal_name: str
                               ) -> None:
-        if contact.is_joining:
-            self._set_joining()
-
-        if contact.is_joined:
-            self._set_joined()
+        self._update_state(contact)
 
-        if contact.is_not_joined:
-            self._set_not_joined()
-
-    def _set_joining(self) -> None:
-        self._ui.groupchat_state.set_visible_child_name('joining')
+    def _update_state(self, contact: GroupchatContact) -> None:
+        if contact.is_joining:
+            self._ui.groupchat_state.set_visible_child_name('joining')
 
-    def _set_joined(self) -> None:
-        self.hide()
-        self.set_no_show_all(True)
+        elif contact.is_not_joined:
+            self._ui.groupchat_state.set_visible_child_name('not-joined')
 
-    def _set_not_joined(self) -> None:
-        self._ui.groupchat_state.set_visible_child_name('not-joined')
-        self.show()
+        self.set_visible(not contact.is_joined)
 
     def set_fetching(self) -> None:
         self._ui.groupchat_state.set_visible_child_name('fetching')



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/e24da5f98913b18cc59b5d8c8f3d913e422fee21

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/e24da5f98913b18cc59b5d8c8f3d913e422fee21
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

Reply via email to