Bug 286958 - Wrong keyboard layout switching order when using more than two layouts
Summary: Wrong keyboard layout switching order when using more than two layouts
Status: RESOLVED REMIND
Alias: None
Product: kxkb
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Andriy Rysin
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-18 21:01 UTC by Eugene
Modified: 2011-11-19 13:55 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
Screenshot of keyboard layouts list when it changed after Ctrl+Alt+K is pressed (6.87 KB, image/png)
2011-11-18 21:01 UTC, Eugene
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Eugene 2011-11-18 21:01:16 UTC
Created attachment 65830 [details]
Screenshot of keyboard layouts list when it changed after Ctrl+Alt+K is pressed

Version:           unspecified (using KDE 4.7.3) 
OS:                Linux

Screenshot of keyboard layouts list when it changed after Ctrl+Alt+K is
pressed.

I'm using three keyboard layouts in Kubuntu 11.10 that installed in following
order:
1) English (US);
2) Russian;
3) Ukrainian

I found that several keyboard combinations to switch layouts has issues that
makes working with system, especially with texts, very uncomfortable. The main
issue is that switching procedure differs from manner in which keyboard layout
installed but there are some other issues too. Next I'm describing in detail
all the combinations and found issues.

Alt + Caps Lock – with Right Alt + Caps Lock it stops switching on last layout
– UA.


Alt + Ctrl — 1) with Left Alt + Left Ctrl is wrong switching order (US-UA-RU);
2)  with Right Alt + Right Ctrl is right switching order but it stops switching
on last layout - UA


Alt + Shift — 1) with Left Alt+ Left Shift is wrong switching order (US-UA-RU);
2) with Right Alt + Right Shift is right switching order but it stops switching
on last layout – UA.


Alt + Space – with Right Alt + Space it stops switching on last layout – UA.


Caps Lock (to first layout), Shift+Caps Lock (to last layout) – Shift+Caps Lock
switching to RU but must to UA as UA is the last layout.


Ctrl + Shift – with Left Ctrl+ Left Shift and with Right Ctrl + Left Shift is
wrong switching order (US-UA-RU)


Left Ctrl (to first layout), Right Ctrl (to last layout) – Right Ctrl switching
to RU, but must to UA, as UA is the last layout.


Both Alt`s – not works if first Left Alt and then Right Alt pressed (if first
pressed Right Alt and then Left Alt - it works)


Both Ctrl`s – not works if first Left Ctrl and then Right Ctrl pressed (if
first pressed Right Ctrl and then Left Ctrl - it works)


Both Shift's – wrong order if first right Shift pressed and than left Shift
(US-UA-RU) (if first left Shift pressed and than right – right order)


Right Alt – it stops switching on last layout – UA.


Ctrl+Alt+K. This combination is not working at all. When I press it the list of
layouts, that we can see clicking by right mouse button on layout indicator,
changes the view like in picture in attachment (layout.png).

All this issues makes the work in system, especially with texts, very
uncomfortable and should be fixed.

Тhanks in advance.

Reproducible: Always

Steps to Reproduce:
Just try to use any of represented above keyboard switch combinations.

Actual Results:  
All keyboard combinations switches in wrong order or stops switcing in some cases.

Expected Results:  
I expect it switches in order like keyboard layouts installed.
Comment 1 Andriy Rysin 2011-11-19 04:19:51 UTC
This looks like a dup of 286302. There was some fun dealing with global shortcuts.

*** This bug has been marked as a duplicate of bug 286302 ***
Comment 2 Eugene 2011-11-19 10:23:57 UTC
The thing is that this is not an one issue - this is several issues. And in  bug 286302 I didn't found several things I noted. Not only wrong switching order, but there are difference between some left and right buttons when switching - they have different behavior. So, if all of this will be fixed, it's ok. Otherwise I'll write new report because it's complicated to work with texts when such things happens.
Comment 3 Eugene 2011-11-19 10:27:20 UTC
Note that I'm using more than 2 keyboard layouts. I this case there are more issues than just problem with Alt+Ctrl+K ! I noted them all above. Please read it all before duplicate my bug.
Comment 4 Andriy Rysin 2011-11-19 13:55:36 UTC
There are several issues here:
1) Only alternative shortcut (e.g. Ctrl+Alt+K) is handled by kde, and this issue is fixed
The rest of (modifier-only) shortcuts is handled directly by x.org (xkb) - you can test this by setting keyboard layouts directly (even outside of KDE) with setxkbmap:
2) default Ukrainian layout has 3rd group that is activated by right alt (the default behavior), thus when you switch to Ukrainian (or any other layout with 3rd group switcher) right alt will stop working for switching and will only work for 3rd group activation, you can turn it off by selecting option "Rgiht Alt never chooses 3rd level"
3) when you select Ctrl+Alt for switching the right Ctrl+Alt goes one way and left Ctrl+Alt goes the opposite (AFAIK)
4) the same for shifts - I think it's intentional

If you don't like behavior of 2-4 you may want to file a bug against xkeyboard-config at freedesktop.org

Also default Ukrainian layout has 4 Russian letters (as well as Belorussian and some special punctuation) in 3rd level so you should be able to get away with just two layouts, and I think in the latest xkeyboard-config the Russian layout has a variant with mirrored behavior (4 Ukrainian letters in 3rd level) - in case you use Russian more than Ukrainian.

To summarize it all we can close it either as DUP/FIXED (for Ctrl+Alt+K) or INVALID/WORKSFORME/UPSTREAM for the rest of the xkb shortcuts - up to you, I am flexible here :)