Bug 493536 - xkb layout switching shortcuts are not listed in kcm_keys, leading to a confusing UX on how to change them
Summary: xkb layout switching shortcuts are not listed in kcm_keys, leading to a confu...
Status: CONFIRMED
Alias: None
Product: systemsettings
Classification: Applications
Component: kcm_keys (show other bugs)
Version: master
Platform: Ubuntu Linux
: NOR minor
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: usability
Depends on:
Blocks:
 
Reported: 2024-09-23 16:02 UTC by antilogic963
Modified: 2024-09-23 21:01 UTC (History)
5 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 antilogic963 2024-09-23 16:02:41 UTC
SUMMARY
ctrl+space by default switches keyboard layout, however there is another shortcut (Meta+Alt+K).
I am not able to find and unbind the ctrl+space shortcut anywhere in shortcuts settings.

STEPS TO REPRODUCE
1. Go to System Settings Shortcuts
2. Search for ctrl+space
3. 0 results, however ctrl+space actually is an active shortcut that switches keyboard layout.

OBSERVED RESULT
Cannot find active shortcut

EXPECTED RESULT
Display active shortcut.
ability to disable

SOFTWARE/OS VERSIONS
Operating System: Kubuntu 24.04
KDE Plasma Version: 5.27.11
KDE Frameworks Version: 5.115.0
Qt Version: 5.15.13
Kernel Version: 6.8.0-44-generic (64-bit)
Graphics Platform: offscreen
Processors: 16 × AMD Ryzen 7 7800X3D 8-Core Processor
Memory: 61.9 GiB of RAM
Graphics Processor: AMD Radeon RX 7900 GRE


ADDITIONAL INFORMATION
The ctrl+space shortcut appears to mostly work on edit fields (however it activates on some apps or games which interfere with that applications key-binds) so it is a different action than normal layout switcher with Meta+Alt+K.
Comment 1 cwo 2024-09-23 17:34:31 UTC
Thank you for the bug report!

This is one of the special keyboard shortcuts that is not set through Plasma's keyboard shortcuts directly, but by the xkb system lower in the stack. Configuration here is unfortunately a little unintuitive; you need to go to System Settings -> Keyboard, then the "Key Bindings" tab (or in Plasma 6.2 page). In the tree view, you should find "Switching to another Layout", and one of the options there should be Ctrl + Space. Uncheck that box, and the shortcut should be unbound.

In principle, this definitely should be listed in the Keyboard Shortcuts configuration somehow, and I'm moving this there. As it works completely differently from the other shortcuts, it would need some unfortunate special-casing.
Comment 2 antilogic963 2024-09-23 18:29:31 UTC
Thank you for your rapid response. In my case that checkbox was off. But I found out that I also had another entry in the "Input Method" section. So when I enabled ctrl+space (in your suggested tree) i started seeing two different icons for my keyboard layout in "Task manager".
I removed the secondary input method and just have my two keyboard layouts and it all works as i want now. Though I am still a but confused about the difference between "Input Method" and "Keyboard Layout".
Comment 3 cwo 2024-09-23 20:13:23 UTC
Glad to know it works now! The input method shortcut should probably also be listed in the shortcuts configuration page somehow. This would fit nicely into the new KDE community goal about improving user input. Feel free to file a new bug report about this (ideally in the same location as this, systemsettings / kcm_keys.

(In reply to antilogic963 from comment #2)
> Though I am still a but confused about the
> difference between "Input Method" and "Keyboard Layout".

A simple way to think about it is this: Keyboard layouts are very simple things. You press a key, a character appears on screen. Maybe sometimes there's a composed key where you press two keys in sequence and get an â or ó. But you couldn't type something like Japanese or Chinese, with ~2000 (or substantially more) characters; hardly anyone could remember the key combinations for that. You'd want something where you can type the pronunciation or some other easy to understand short form, and the computer intelligently offers you the different characters that correspond to that sequence (and there may be many of those). That would be an input method.

Input methods usually also do regular keyboard layouts, as someone might want to switch between keyboard layouts and still be able to type Japanese. But because they are designed for more complex situations, if you don't type in a language that requires an input method, it's typically simpler to just use the layouts without an input method.
Comment 4 antilogic963 2024-09-23 21:01:40 UTC
Understood, thank you for your explanation:)