Skip to content

Fix caps lock being considered shift lock, clean up tabbox modifiers handling and fix custom tiling not triggering with some keyboard settings

Xaver Hugl requested to merge work/zamundaaa/shift-tiling into master

Commit 1: Caps lock is not shift lock. For some reason it was changed to be considered as shift lock in ec98f498... but that's wrong afaiu. Shift lock is a separate thing, and is handled by libxkbcommon

Commit 2: With ^ fixed, remove the workaround I introduced for the tabbox modifier handling, and use the normal modifiers for the tabbox - they're the same now anyways

Commit 3: use normal keyboard modifiers for triggering custom tiling. Pressing shift isn't really a global shortcut, and using the global shortcut logic for this breaks with some keyboard layouts and settings

BUG: 465858

For more details on the bug: With these keyboard layouts or settings, the shift modifier is consumed by the xkb state machine for triggering caps lock, if the modifier is active when a second shift key is pressed. When we check what modifiers are consumed, we check if pressing a shift key would consume the shift modifier... So that always returns true. Idk if that can actually be fixed in a more "proper" way that also works for global shortcuts, but a shift-only global shortcut would be very weird, so I'd just ignore that theoretical issue tbh.

Merge request reports