fix: launcher overlay paints opaque @bg instead of transparent #5
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/launcher-opaque-background"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
bind_window_autore-broadcasts the shared sheet (window { background-color: @bg }) atUSER - 10, outranking the app CSSwindow { background-color: transparent }at APPLICATION priority — the full-screen overlay fills the screen with opaque#0c0c0c, hiding the desktop behind the launcher. Worst under a VM software renderer.Fix:
bind_window_auto_with_app_css(rides atUSER - 9), matching breadbar/breadhelp. Verified with headless pixman sway + solid bg — overlay region outside the panel now shows through.breadsearchandbreadcliphave the samenew_overlay_window+bind_window_autopattern and need the same fix.The full-screen overlay window sets `window { background-color: transparent }` in its app CSS (APPLICATION priority), but `bind_window_auto` re-broadcasts the shared component sheet — which includes `window { background-color: @bg }` — as a widget-tree provider at STYLE_PROVIDER_PRIORITY_USER - 10. Provider priority is the primary cascade key, so that outranks the app rule regardless of selector specificity: the "transparent overlay" fills the screen with an opaque @bg (#0c0c0c) rectangle, hiding the whole desktop behind the launcher. Guaranteed to bite under a VM's software renderer where there's no GL context to paper over it. Bind the app sheet too, via bind_window_auto_with_app_css (rides at USER - 9, back above the shared window rule) — same pattern breadbar and breadhelp already use. Verified with a headless pixman sway + solid-colour background: the overlay region outside the panel now shows the desktop through. breadsearch and breadclip use the same new_overlay_window + bind_window_auto pattern and need the same fix.