Daniel Brötzmann pushed to branch master at gajim / gajim


Commits:
6604df1f by mesonium at 2024-12-23T22:27:29+00:00
cfix: AvatarBox: Finalize widget correctly

- - - - -


1 changed file:

- gajim/gtk/conversation/rows/widgets.py


Changes:

=====================================
gajim/gtk/conversation/rows/widgets.py
=====================================
@@ -26,6 +26,7 @@
 from gajim.gtk.emoji_chooser import EmojiChooser
 from gajim.gtk.menus import get_groupchat_participant_menu
 from gajim.gtk.util import GajimPopover
+from gajim.gtk.util import SignalManager
 
 if TYPE_CHECKING:
     from gajim.gtk.conversation.rows.message import MessageRow
@@ -453,9 +454,11 @@ def set_error_tooltip(self, text: str) -> None:
         self._error_image.set_tooltip_markup(text)
 
 
-class AvatarBox(Gtk.Box):
+class AvatarBox(Gtk.Box, SignalManager):
     def __init__(self, contact: ChatContactT) -> None:
         Gtk.Box.__init__(self)
+        SignalManager.__init__(self)
+
         self.set_size_request(AvatarSize.ROSTER, -1)
         self.set_valign(Gtk.Align.START)
 
@@ -472,13 +475,18 @@ def __init__(self, contact: ChatContactT) -> None:
         self.append(self._menu_popover)
 
         gesture_left_click = Gtk.GestureClick(button=Gdk.BUTTON_PRIMARY)
-        gesture_left_click.connect("pressed", self._on_avatar_clicked)
+        self._connect(gesture_left_click, "pressed", self._on_avatar_clicked)
         self.add_controller(gesture_left_click)
 
         gesture_right_click = Gtk.GestureClick(button=Gdk.BUTTON_SECONDARY)
-        gesture_right_click.connect("pressed", self._on_avatar_clicked)
+        self._connect(gesture_right_click, "pressed", self._on_avatar_clicked)
         self.add_controller(gesture_right_click)
 
+    def do_unroot(self):
+        self._disconnect_all()
+        Gtk.Box.do_unroot(self)
+        app.check_finalize(self)
+
     def set_from_paintable(self, texture: Gdk.Texture | None) -> None:
         self._image.set_from_paintable(texture)
 



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

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/6604df1fc8ed36857f3f22cef28c28e56c73500c
You're receiving this email because of your account on dev.gajim.org.


_______________________________________________
Commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to