git.lucas.co / cce-compositor
Wayland compositor (wlroots)
git clone https://git.lucas.co/cce-compositor.git

commitf45ea5ac5f636a5c0783d83cba28bb75732012b6
parentd194ba5951
authorLucas Galante <[email protected]>
date2026-06-27 14:23
fix: disable backdrop blur on windows with CSD margins to prevent shadow blurring

 src/server/window.rs | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/server/window.rs b/src/server/window.rs
index 2b90d4c..6a26ee6 100644
--- a/src/server/window.rs
+++ b/src/server/window.rs
@@ -1534,7 +1534,14 @@ impl Window {
         ffi::wlr_scene_node_set_enabled(self.popup_tree as *mut ffi::wlr_scene_node, enabled);
 
         if enabled {
-            ffi::river_scene_node_enable_blur(self.surfaces.tree as *mut ffi::wlr_scene_node, requested.blur);
+            let mut blur_enabled = requested.blur;
+            if !self.wm_requested.ssd {
+                let (dec_w, dec_h) = self.get_decorations_size();
+                if dec_w > 0 || dec_h > 0 {
+                    blur_enabled = false;
+                }
+            }
+            ffi::river_scene_node_enable_blur(self.surfaces.tree as *mut ffi::wlr_scene_node, blur_enabled);
             ffi::river_scene_node_set_opacity(self.tree as *mut ffi::wlr_scene_node, requested.opacity);
 
             let radius = if requested.circular {