Skip to content

Pass all key events to kglobalacceld

Vlad Zahorodnii requested to merge work/zzag/kglobalaccel-pass-all-events into master

kglobalacceld needs to process all key events to detect whether a modifier only shortcut has been triggered.

On the other hand, when using Meta+Space keyboard layout switching shortcut, we will get the following key syms (not native scan codes)

  • press meta: Meta_L
  • press spacebar: Super_L
  • release meta: Meta_L
  • release spacebar: Space

The fact that xkb reports Super_L when the spacebar is pressed trips modifier only shortcut detection in kglobalacceld, and it's likely that kickoff will open after pressing Meta+Space to switch the keyboard layout.

In order to prevent that, kglobalacceld needs to see all key events even with invalid key codes. As an alternative, we could explore the possibility of using native scan codes instead of mapping keysyms to key codes, but that needs thorough analysis, which we have no time for.

The check was introduced in 4403e86a. After that check is removed, the test still passes.

Merge request reports