mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-06-18 17:15:20 -04:00
9f4123cc3c
When a bar with background transparency + blur uses auto-hide, the ext-background-effect-v1 blur region was only slid off-surface via the reveal Translate, but the region object stayed non-empty. Hyprland gates layer-surface blur on `!m_blurRegion.empty()`, so the non-empty region keeps blur enabled; the renderer then intersects the off-surface region with the surface box, the clip degenerates to empty, and an empty clip is treated as "unclipped" — so the whole bar surface box gets blurred, leaving a blurred strip where the hidden bar would be. (niri clips correctly, so it never showed there.) Gate the published blur region on `barRevealed`: tear it down (null) whenever the bar is not currently shown, so the region is genuinely empty and the compositor disables the effect. Fixes #2656.