[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 David Redondo changed: What|Removed |Added Latest Commit|https://invent.kde.org/fram |https://invent.kde.org/fram |eworks/kdeclarative/commit/ |eworks/kguiaddons/commit/fc |63d4a2a0f29d0059f1076775cbf |699b4c5c7ad622fa11f4f09098f |5b22b1ef7c29d |070d2a49391 Resolution|--- |FIXED Status|ASSIGNED|RESOLVED --- Comment #17 from David Redondo --- Git commit fc699b4c5c7ad622fa11f4f09098f070d2a49391 by David Redondo. Committed on 30/11/2020 at 12:02. Pushed by davidre into branch 'master'. Make shortcut inhibition work from the get-go Call the private slot directly instead of waiting for the queued call. M +3-0src/recorder/waylandinhibition.cpp https://invent.kde.org/frameworks/kguiaddons/commit/fc699b4c5c7ad622fa11f4f09098f070d2a49391 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Bug Janitor Service changed: What|Removed |Added Status|REOPENED|ASSIGNED --- Comment #16 from Bug Janitor Service --- A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kguiaddons/-/merge_requests/8 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 --- Comment #15 from Patrick Silva --- (In reply to Patrick Silva from comment #14) > This issue is still reproducible when I try to assign a shortcut already in > use via Shortcuts KCM. For example, my screen is locked when I try to assign meta+L (default shortcut to lock the screen) to Dolphin. -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Patrick Silva changed: What|Removed |Added Keywords||wayland -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Patrick Silva changed: What|Removed |Added Resolution|FIXED |--- Status|RESOLVED|REOPENED --- Comment #14 from Patrick Silva --- This issue is still reproducible when I try to assign a shortcut already in use via Shortcuts KCM. Operating System: KDE neon Unstable Edition KDE Plasma Version: 5.20.80 KDE Frameworks Version: 5.77.0 Qt Version: 5.15.1 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Nate Graham changed: What|Removed |Added Version Fixed In||5.77 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 David Redondo changed: What|Removed |Added Latest Commit||https://invent.kde.org/fram ||eworks/kdeclarative/commit/ ||63d4a2a0f29d0059f1076775cbf ||5b22b1ef7c29d Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #13 from David Redondo --- Git commit 63d4a2a0f29d0059f1076775cbf5b22b1ef7c29d by David Redondo. Committed on 12/11/2020 at 16:32. Pushed by davidre into branch 'master'. Rewrite KeySequenceItem (and helper) to use KeySequenceRecorder Use the new KeySequenceRecorder which was created for this purpose. We can remove almost all logic from the helper aside from the conflict checking. Related: bug 427730 M +26 -24 src/qmlcontrols/kquickcontrols/KeySequenceItem.qml M +1-0src/qmlcontrols/kquickcontrols/private/CMakeLists.txt M +26 -388 src/qmlcontrols/kquickcontrols/private/keysequencehelper.cpp M +14 -89 src/qmlcontrols/kquickcontrols/private/keysequencehelper.h https://invent.kde.org/frameworks/kdeclarative/commit/63d4a2a0f29d0059f1076775cbf5b22b1ef7c29d -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 --- Comment #12 from David Redondo --- Git commit 28a80aba1463b83ea8845ff22566a2110c8fb041 by David Redondo. Committed on 12/11/2020 at 16:26. Pushed by davidre into branch 'master'. Rewrite KKeySequenceWidget to use KeySequenceRecorder Use the new KeySequenceRecorder which was created for this purpose. This has the benefit of simplifying the logic. While at it I sorted functions and unified method naming which additionally helps in following what this class does. M +1-0CMakeLists.txt M +1-0src/CMakeLists.txt M +324 -626 src/kkeysequencewidget.cpp D +0-38 src/kkeysequencewidget_p.h https://invent.kde.org/frameworks/kxmlgui/commit/28a80aba1463b83ea8845ff22566a2110c8fb041 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 --- Comment #11 from David Redondo --- Git commit dca78412606f1ea0e66bcafe14dbd2ebf9836674 by David Redondo. Committed on 12/11/2020 at 15:52. Pushed by davidre into branch 'master'. Add KeySequenceRecorder as base for KKeySequenceWidget and KeySequenceItem Currently we have two copies of the shortcut recording logic: One in KKeySequenceWidget and the other one in the helper of KeySequenceItem. They are mostly straight copies but there are slight differences. This situation is naturally prone to divergence between both. If a bug is fixed in one, the fix needs to be ported to the other one. If a need feature is added it has to be added to both. Facing this situation when wanting to add support for the shortcut inhibit protocol on Wayland, I decided to abstact the recording logic out and make both use it, instead of adding more duplicated code. On X we can grab the keyboard while recording to prevent shortcuts from being triggered but we can't do that on Wayland and the Compositor will trigger shortcuts when the user actually wants to reassign them. Depending on the platform, this new class will either grab the keyboard or inhibit shortcuts on the window that is passsed to it. The recording logic is copied out of KKeySequenceWidget and stays the same but is cleaned up a bit inside the methods for in my opinion better readability. M +13 -2CMakeLists.txt M +1-0autotests/CMakeLists.txt A +168 -0autotests/keysequencerecordertest.cpp [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] A +27 -0autotests/keysequencerecordertest.h [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] M +22 -0src/CMakeLists.txt A +143 -0src/recorder/keyboard-shortcuts-inhibit-unstable-v1.xml A +42 -0src/recorder/keyboardgrabber.cpp [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] A +24 -0src/recorder/keyboardgrabber_p.h [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] A +491 -0src/recorder/keysequencerecorder.cpp [License: LGPL(v2.0+)] A +132 -0src/recorder/keysequencerecorder.h [License: LGPL(v2.0+)] A +19 -0src/recorder/shortcutinhibition_p.h [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] A +99 -0src/recorder/waylandinhibition.cpp [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] A +31 -0src/recorder/waylandinhibition_p.h [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)] https://invent.kde.org/frameworks/kguiaddons/commit/dca78412606f1ea0e66bcafe14dbd2ebf9836674 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Bug Janitor Service changed: What|Removed |Added Status|CONFIRMED |ASSIGNED --- Comment #10 from Bug Janitor Service --- A possibly relevant merge request was started @ https://invent.kde.org/frameworks/kdeclarative/-/merge_requests/27 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Nate Graham changed: What|Removed |Added Severity|minor |normal Status|REOPENED|CONFIRMED -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 --- Comment #9 from Philipp Reichmuth --- That would mean that effectively under Wayland it will for the foreseeable future be impossible to assign keyboard shortcuts in a general way, as long as we try to do it by grabbing the keyboard. Maybe there could be another solution to getting the key. For example the global shortcut KCM could tell KWin that now we're expecting a keypress, so please report back the next keypress instead of executing the regular action associated with it. -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 David Redondo changed: What|Removed |Added CC||k...@david-redondo.de --- Comment #8 from David Redondo --- It's because it is currently not possible to grab the keyboard on wayland -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Patrick Silva changed: What|Removed |Added CC||philipp.reichm...@gmail.com --- Comment #7 from Patrick Silva --- *** Bug 427740 has been marked as a duplicate of this bug. *** -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Patrick Silva changed: What|Removed |Added Version|5.16.5 |5.19.90 -- You are receiving this mail because: You are watching all bug changes.
[plasmashell] [Bug 407395] [Wayland] Cannot assign to anything a keyboard shortcut that's already in use
https://bugs.kde.org/show_bug.cgi?id=407395 Patrick Silva changed: What|Removed |Added Summary|[Wayland] Cannot assign to |[Wayland] Cannot assign to |widgets a keyboard shortcut |anything a keyboard |that's already in use |shortcut that's already in ||use --- Comment #6 from Patrick Silva --- This bug does not only affect widgets. On Wayland I can't, using the Global Shortcuts kcm, assign to Kate the shortcut meta+e assigned to Dolphin by default, for example. Operating System: KDE neon Unstable Edition KDE Plasma Version: 5.19.80 KDE Frameworks Version: 5.72.0 Qt Version: 5.14.2 -- You are receiving this mail because: You are watching all bug changes.