Unable to change to other input method in default setting
Step to Reproduce
- Install a fresh Linux desktop (e.g. Fedora 39)
- Install the ibus-cangjie package (e.g. ibus-cangjie-engine-cangjie)
- Restart ibus (
ibus restart
) - Add the input method in "Settings" > "Keyboard" > "Input Source"
- Use the top right indicator to switch to the "Cangjie" method.
- Open a text editor and place the focus on the typing area.
- Trigger the default input method switching hot-key (i.e. Super + space)
Expected Behaviour
The system switch to another input method.
Actual Behaviour
The typing area shows a newly typed full-width space " " but the input method stays the same.
Cause
- The default behaviour of ibus-cangjie converts space into full-width space character.
- This behaviour apparently happens before the system register the hotkey Super + space.
- Super + fullwidth-space is not the hotkey.
- Input method doesn't change.
Current Solution
User need to manually click the top right ibus indicator and enable the "Half-width character" feature. That way the halfwidth space will stay halfwidth and the hotkey will work.
Before (hotkey fail)
After (hotkey works)
This is not ideal especially when this is the default installation setup. There can also be other hotkeys involving punctuations and they might have the same issue.
Proposed Solution
- Detects if multiple keys are pressed at the same time, do not translate the half width characters; or
- Specifically identify when the Super key is pressing, do not translate the half width characters.
Edited by Koala Yeung