Bug 423305 - Can't bind Meta + !, @, #, etc. anymore for keybindings (i.e. those which involve the shift key)
Summary: Can't bind Meta + !, @, #, etc. anymore for keybindings (i.e. those which inv...
Status: REOPENED
Alias: None
Product: frameworks-kdeclarative
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: VHI normal
Target Milestone: ---
Assignee: Marco Martin
URL:
Keywords: regression
: 310881 324488 423887 424035 425727 426073 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-06-21 02:00 UTC by Taylor
Modified: 2023-05-08 10:40 UTC (History)
13 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.74


Attachments
Screenshot of incorrect binding (12.12 KB, image/png)
2020-06-21 02:00 UTC, Taylor
Details
Screenshot of Meta+! shortcut on plasma 5.18.5 (31.07 KB, image/png)
2020-06-22 15:29 UTC, Oussema Bouaneni
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Taylor 2020-06-21 02:00:55 UTC
Created attachment 129560 [details]
Screenshot of incorrect binding

SUMMARY
Binding Meta+Shift+1 no longer binds to Meta+!. It now binds to Meta+Shift+!. This is an impossible key combination to press.

STEPS TO REPRODUCE
1. Try to bind Meta+Shift+1/Meta+! to any keybinding. (In my case, "window to desktop 1" binding)
2. 
3. 

OBSERVED RESULT
Binds to Meta+Shift+! instead of Meta+!

EXPECTED RESULT
Binds to Meta+!

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

ADDITIONAL INFORMATION
I've had no issues using these binds for previous versions of plasma. Seems to be introduced recently.
Comment 1 Oussema Bouaneni 2020-06-22 15:29:33 UTC
Created attachment 129587 [details]
Screenshot of Meta+! shortcut on plasma 5.18.5

I can confirm this bug is not present on plasma 5.18.5. See attached screenshot for expected behavior.
This bug is probably related to Bug 423080 which affects plasma 5.19
Comment 2 Nate Graham 2020-07-07 21:18:07 UTC
*** Bug 423887 has been marked as a duplicate of this bug. ***
Comment 3 Nate Graham 2020-07-11 04:36:39 UTC
*** Bug 424035 has been marked as a duplicate of this bug. ***
Comment 4 Jan Paul Batrina 2020-08-30 08:43:23 UTC
Hello, I might have found the cause of this issue.

KDeclarative's KeySequenceItem started as a clone of KXmlGui's KKeySequence. git blame shows that 1a919c88 is when this happens, and for some reason, the KKeyServer::isShiftAsModifierAllowed check is omitted.
(links to the lines)
https://invent.kde.org/frameworks/kxmlgui/-/blob/master/src/kkeysequencewidget.cpp#L769

https://invent.kde.org/frameworks/kdeclarative/-/blob/master/src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp#L457

Readding the check fixes this bug, but my limited testing does not guarantee it not introducing new ones or resulting to regressions, especially since it was conciously omitted before.

While this fixes the case with Meta as modifier, it does not work with any other modifier (or just shift + num) from what I tested. After that issue is resolved, then only the keys hardcoded into the check are allowed to be with Shift.
https://invent.kde.org/frameworks/kwindowsystem/-/blob/master/src/kkeyserver.cpp#L96
Comment 6 Nate Graham 2020-09-06 23:26:22 UTC
*** Bug 425727 has been marked as a duplicate of this bug. ***
Comment 7 Nate Graham 2020-09-08 13:06:36 UTC
*** Bug 426073 has been marked as a duplicate of this bug. ***
Comment 8 Nate Graham 2020-09-09 03:26:02 UTC
*** Bug 324488 has been marked as a duplicate of this bug. ***
Comment 9 Nate Graham 2020-09-09 03:29:14 UTC
*** Bug 310881 has been marked as a duplicate of this bug. ***
Comment 10 Emanuele 2023-05-08 10:40:58 UTC
Still not working on my site:

KDE Plasma: 5.27.4
KDE Framewrok: 5.105.0
Qt: 5.15.9
Kernel: 6.3.1-arch1-1 (64-bit)

I'm trying to set "Meta+Shift+>" for "Window to Next Screen", but It's doesn't work.

I also tried editing the ".config/kglobalshortcutsrc" file from "Meta+>" to "Meta+Shift+>" (and rebooting) without luck.

Thanks