Watch
1
0
Fork
You've already forked souveraine
0

shell: the bar claims its space instead of asking to be ignored

exclusionMode was ExclusionMode.Ignore, which tells the compositor to
disregard the exclusive zone outright — so the expression below it computed
a height that was thrown away and every window laid out underneath the bar.
The bar is not app space while it is visible.

Auto-hide still yields 0, so a bar configured to hide gives its space back;
the mode only says "honour what I claim".

Not deployed: the phone locked itself on session start, which is
lock-on-startup firing for the first time under viewtop (80cb4b2), and
deploy.sh refuses a live deploy into a locked session.
This commit is contained in:
Fimeg 2026-08-04 19:27:53 -04:00
commit ca272d1d7d

View file

@ -52,7 +52,16 @@ Scope {
}
property bool superShow: false
property bool mustShow: hoverRegion.containsMouse || superShow
exclusionMode: ExclusionMode.Ignore
// Normal, not Ignore. Ignore tells the compositor to disregard
// the exclusive zone entirely, so the careful expression below
// computed a height that was then thrown away and every window
// was laid out underneath the bar. The bar is not app space
// when it is visible; that is the whole point of a zone.
//
// The auto-hide case still yields 0 below, so a bar configured
// to hide still gives its space back the mode says "honour
// what I claim", and claiming nothing remains available.
exclusionMode: ExclusionMode.Normal
exclusiveZone: (Config?.options.bar.autoHide.enable && (!mustShow || !Config?.options.bar.autoHide.pushWindows)) ? 0 :
Appearance.sizes.baseBarHeight + (Config.options.bar.cornerStyle === 1 ? Appearance.sizes.hyprlandGapsOut : 0)
WlrLayershell.namespace: "quickshell:bar"