From 10adef3092d29d6dcd6944e594dfadcbe927bed0 Mon Sep 17 00:00:00 2001 From: "Jeffrey C. Ollie" Date: Thu, 2 Oct 2025 13:43:33 -0500 Subject: [PATCH] gtk: fix duplicate signal handlers --- src/apprt/gtk/class/window.zig | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/apprt/gtk/class/window.zig b/src/apprt/gtk/class/window.zig index c0dd6ab1f..31a4cc6ff 100644 --- a/src/apprt/gtk/class/window.zig +++ b/src/apprt/gtk/class/window.zig @@ -693,6 +693,10 @@ pub const Window = extern struct { self: *Self, tree: *const Surface.Tree, ) void { + // Ensure that all old signal handlers have been removed before adding + // them. Otherwise we get duplicate surface handlers. + self.disconnectSurfaceHandlers(tree); + const priv = self.private(); var it = tree.iterator(); while (it.next()) |entry| {