From efe39b8ea008cea3106fcc268d29d6f2bdf3c76e Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sun, 16 Feb 2025 20:51:28 +0100 Subject: Fix compatibility with GTK 4.17+ --- .../src/ui/conversation_content_view/file_image_widget.vala | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'main/src/ui/conversation_content_view/file_image_widget.vala') diff --git a/main/src/ui/conversation_content_view/file_image_widget.vala b/main/src/ui/conversation_content_view/file_image_widget.vala index 1c8d4c02..a7a7bcc0 100644 --- a/main/src/ui/conversation_content_view/file_image_widget.vala +++ b/main/src/ui/conversation_content_view/file_image_widget.vala @@ -7,7 +7,7 @@ using Dino.Entities; namespace Dino.Ui { -public class FileImageWidget : Box { +public class FileImageWidget : Widget { enum State { EMPTY, PREVIEW, @@ -26,6 +26,10 @@ public class FileImageWidget : Box { private FileTransmissionProgress transmission_progress = new FileTransmissionProgress() { halign=Align.CENTER, valign=Align.CENTER, visible=false }; + construct { + layout_manager = new BinLayout(); + } + public FileImageWidget(int MAX_WIDTH=600, int MAX_HEIGHT=300) { this.halign = Align.START; @@ -54,7 +58,7 @@ public class FileImageWidget : Box { overlay.add_overlay(image_overlay_toolbar); overlay.set_clip_overlay(image_overlay_toolbar, true); - this.append(overlay); + overlay.insert_after(this, null); GestureClick gesture_click_controller = new GestureClick(); gesture_click_controller.button = 1; // listen for left clicks @@ -260,6 +264,11 @@ public class FileImageWidget : Box { } return false; } + + public override void dispose() { + if (overlay != null && overlay.parent != null) overlay.unparent(); + base.dispose(); + } } } -- cgit v1.3