From 04f1bc0960908ede6976f4030408454481605fc0 Mon Sep 17 00:00:00 2001 From: Leah Amelia Chen Date: Tue, 4 Aug 2026 03:46:31 +0800 Subject: [PATCH] winproto/wayland: disable custom blur on GTK >=4.23.3 GTK 4.23.3 added its own (much smarter) implementation of background blur, which means our implementation is not only redundant, it also crashes the program because a surface cannot have multiple associated blur objects. Ergo, don't do custom blur on newer GTK versions. See #13578 --- src/apprt/gtk/winproto/wayland.zig | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/apprt/gtk/winproto/wayland.zig b/src/apprt/gtk/winproto/wayland.zig index dc3647679..0babf7111 100644 --- a/src/apprt/gtk/winproto/wayland.zig +++ b/src/apprt/gtk/winproto/wayland.zig @@ -174,6 +174,12 @@ pub const Window = struct { }; const bg_effect: ?*ext.BackgroundEffectSurfaceV1 = bg: { + if (gtk_version.runtimeAtLeast(4, 23, 3)) { + // GTK 4.23.3 added an official way to do background blur, + // so we don't need to do anything on our own. + break :bg null; + } + const mgr = app.globals.get(.ext_background_effect) orelse break :bg null;