quickshell: OnDemand keyboard with focus grab — Exclusive made the grab self-clear and close panels

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-06-12 19:49:25 +01:00
parent 641d5c7e63
commit be330a0c6d

View file

@ -271,8 +271,11 @@ in
required property var shellRoot
screen: modelData
WlrLayershell.namespace: "quickshell-bar"
// Keyboard only while the session menu is open (arrow/Enter nav)
WlrLayershell.keyboardFocus: sessionMenu.open || launcherPanel.open ? WlrKeyboardFocus.Exclusive : WlrKeyboardFocus.None
// OnDemand + HyprlandFocusGrab is the working combination
// (caelestia's): the grab redirects focus to this window and
// OnDemand lets the layer surface accept it. Exclusive fights
// the grab it self-clears and instantly closes the panel.
WlrLayershell.keyboardFocus: sessionMenu.open || launcherPanel.open ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.None
anchors {
top: true