Bug 448263 - Some small shortcuts break bigger ones
Summary: Some small shortcuts break bigger ones
Status: RESOLVED UPSTREAM
Alias: None
Product: frameworks-kglobalaccel
Classification: Frameworks and Libraries
Component: general (other bugs)
Version First Reported In: 5.90.0
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: kdelibs bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-01-11 15:50 UTC by Artur Rudenko
Modified: 2024-08-01 19:56 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Artur Rudenko 2022-01-11 15:50:11 UTC
SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***
Some shortcuts (like layout switching) trigger without waiting for last shortcut key release. Example: ctl shift shortcut is triggered without shift being released. After that, this key will be eaten, and some bigger shortcuts, like ctl + shift + arrow won't work and ctl + arrow shortcut will be triggered instead

STEPS TO REPRODUCE
1. Set main shortcut for layout switching to "shift + alt"  
2.  Try to disable compositor using "shift + alt + f12" shortcut

OBSERVED RESULT
Compositor will be disabled

EXPECTED RESULT
Compositor won't be disabled and (custom) "shift f12" shortcut will be triggered 

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 
KDE Frameworks Version: 
Qt Version: 

ADDITIONAL INFORMATION
Wayland/Xorg
Comment 1 fanzhuyifan 2024-08-01 19:56:47 UTC
This is known upstream issue https://gitlab.freedesktop.org/xorg/xserver/-/issues/258. In particular, the shortcut assigned through main shortcut is handled by xkb.

Alternatively, if you set the shortcut in Alternative Shortcut, it will use kglobalacceld's modifier-only shortcuts, which trigger on release instead of press.