From af9ca8f2127173e176c0fbcb69c97596d8fd85e7 Mon Sep 17 00:00:00 2001 From: rope Date: Wed, 2 Sep 2026 12:34:05 +0100 Subject: [PATCH] quickshell: restore the full-width bar surface Reverting the diagnostic. The narrow surface is still the right destination but it needs the frame band drawn without adding a second full-screen surface, which is what the reverted attempt got wrong. Co-Authored-By: Claude Opus 5 --- settings/quickshell.nix | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/settings/quickshell.nix b/settings/quickshell.nix index 7b0698e..a18e95f 100644 --- a/settings/quickshell.nix +++ b/settings/quickshell.nix @@ -1483,13 +1483,15 @@ in bottom: true } - // DIAGNOSTIC — normally bar.screen.width, because the frame - // band and every panel are drawn into this one surface. - // Shrinking it to the bar column clips all of that, which - // looks broken on purpose: the point is to measure whether - // blur and the SDF shader are expensive because of this - // surface's AREA. Revert this line to restore the shell. - implicitWidth: Theme.barWidth + // Screen-sized: the frame band and every panel are drawn into + // this one surface. That AREA is this shell's main cost — + // Hyprland blurs this namespace, and blur is recomputed + // whenever what's behind the surface changes, which with a + // game underneath is every pixel every frame. Shrinking it to + // the bar column measured 57% -> 38% GPU. Doing that for real + // needs the frame band drawn somewhere that is NOT another + // full-screen surface; see the wallpaper window. + implicitWidth: bar.screen.width exclusiveZone: Theme.barWidth color: "transparent"