FS#13188 - [xf86-input-keyboard] layout switching "broken" after packages update
Attached to Project:
Arch Linux
Opened by Panos Filip (Flamelab) - Tuesday, 10 February 2009, 14:27 GMT
Last edited by Jan de Groot (JGC) - Tuesday, 30 March 2010, 07:02 GMT
Opened by Panos Filip (Flamelab) - Tuesday, 10 February 2009, 14:27 GMT
Last edited by Jan de Groot (JGC) - Tuesday, 30 March 2010, 07:02 GMT
|
Details
Description: Keyboard layout switching is "broken" and both
major DEs cannot recognise that the layout has changed.
That means, that if someone has entered a specific key to change layout, the country flag in the notification area doesn't change. Both in KDE 4.2 and GNOME. I tried to force keyboard layout in Xorg.conf, but that didn't help. Nor in /etc/hal/fdi/policy/10-keymap.fdi Additional info: * package version(s) My updates today are included in the .txt file I have attached. Μy 10-keymap.fdi file is also included. Steps to reproduce: 1)Fully update your system 2)Force switching options (with ctrl+alt, alt+shift, ctrl+shift etc) in your DE or Xorg.conf or HAL fdi. 3)Restart HAL and Xorg (or reboot) 4)Try to switch the layout with the keyboard shortcuts you defined for the switching. For example in KDE4, the flag won't change. |
This task depends upon
Closed by Jan de Groot (JGC)
Tuesday, 30 March 2010, 07:02 GMT
Reason for closing: Fixed
Additional comments about closing: 2010-03-30: A task closure has been requested. Reason for request: It's been fixed, so no reason to be open.
Tuesday, 30 March 2010, 07:02 GMT
Reason for closing: Fixed
Additional comments about closing: 2010-03-30: A task closure has been requested. Reason for request: It's been fixed, so no reason to be open.
[flamelab@flamepc ~]$ pacman -Q | grep evdev && pacman -Q | grep xkeyboard
xf86-input-evdev 2.1.0-1
xkeyboard-config 1.4-2
The problem is still there :/ (the flag doesn't change) (KDE4. Can't check for GNOME now)
keyboard-layout2.png (12.7 KiB)
I was using the "AutoAddDevices" "False" Option in my xorg.conf. I removed it and commented all "Input Device" for mouse and keyboard and fdi policy to try to circumvent the problem using the hotplugging feature, but to no avail.
Although I am able to switch layouts and the keyboard/mouse functions correctly, the flag on the "Keyboard Layout Switcher" will not recognize the change in KDE and the respective applet in Gnome will not either. In either DE the Switching Policy I set is ingored and "Global" is used.
pacman -Q | grep evdev && pacman -Q | grep xkeyboard
xf86-input-evdev 2.1.2-1
xkeyboard-config 1.5-1
If you have to build them, if you can't find the packages somewhere, build in this order:
libx11 (if you don't already have it installed, I have the latest one) --> inputproto --> xextproto --> libxext --> libxi to their previous versions.
I am not sure the method I used to find it is correct, so here is what I did: I downgraded all five packages (inputproto libx11 libxext libxi xextproto) to previous version. I then started upgrading one by one in the following order, logging out and back in KDE after each upgrade and checking if switching layouts triggered the flag change and if the switching policy was correct:
1. inputproto
2. xexproto
3. libx11
4. libext
5. and finally, libxi.
Only after logging back in after upgrading libxi did I encounter the problem of the flag not responding to layout switch and the switching policy not working.
AutoAddDevices true - switching doesn't work at all
AutoAddDevices false - switching works, but gnome applet doesn't show it.
After package's been downgraded I have:
* Don't work the 'per application' feature: when I switch between applications the keyboard layout switches to default value.
* Flag' isn't changed if I change the keyboard layout.
With no evdev, hal etc. used - plain xorg.conf.
Sidux (so Debian Sid I suppose) has the same problem: http://sidux.com/Article491.html
Xorg 1.6.0 PKGBUILD needs only minor changes in order to make it.
Maybe the problem does not lie in libxi - or only in libxi - per se, but it also has to do with which version of its dependencies libxi was built upon.
I think Flamelab had built the package with some older versions of other libraries.
Since then I've upgraded my whole xorg to 1.6.0 from /testing, but upgrading libXi alone was enough to fix it.
After upgrading I've got weird problems with slim though, but this is the subject of another ticket... :P
Identifier "Keyboard0"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "geniuscomfy2"
Option "XkbLayout" "us,ru"
Option "XkbVariant" ",winkeys"
Option "XKbOptions" "altwin:super_win,altwin:meta_alt,grp:menu_toggle,grp_led:scroll,ctrl:swapcaps,compose:ralt"
EndSection
works fine for me (I use ion3+xkbion.lua and kde4+xxkb).
Hal stuff and auto add/enable devices disabled in xorg.conf.
Because with 1.6, everything is OK.
After Xorg 1.6 is moved to [extra], this bug report shall be closed :)
xorg-server 1.5.3-4
I do not use testing
I was running xorg 1.6.0 from testing.
Even after opening again testing for a brief moment just to get the newer testing xorg, the bug still persists.
Look here: http://bbs.archlinux.org/viewtopic.php?id=68772
False alarm.
You have to be extra careful to answer "No" to pacman, for all the packages in extra or core, that also exist in testing.
It comes and goes.
@ JGC
And no it is not fixed with xorg-server 1.5.3-5 from extra.
It persists.
layouts works now properly(kde, x86_64)
Keyboard layout switching works in console, in gdm, but DOES NOT work in X11 session (I'm using wmii) after whole system update a week ago.
What additional info is needed?
One to fix the behavior after login (I have autologin) is to change something - anything - in the Gnome Control Panel regarding the keyboard.
So I made this a script and I have to run it each time after the desktop (after autologin) appears.
#!/bin/bash
gconftool-2 --set -t bool /desktop/gnome/accessibility/keyboard/enable true
gconftool-2 --set -t bool /desktop/gnome/accessibility/keyboard/enable false
As you can see it really does nothing as it issues a change and then reverts it.
Just enough for the Gnome keyboard indicator to start working again.
Layout switching does work from the start.
Only the indicator does not show it.
Nevertheless, I need the Gnome Keyboard Layout Indicator to be fully functional and aware of the keyboard's active layout at all times.
How do I accomplish this?
I do not have any keyboard configuration in xorg.conf and have not modified the .fdi file.
Just choosing keyboard layout via Gnome settings works fine.
And it works with gdm.
Ctrl+Shift is used for layout changing.
Two layouts are configured: English (default) and Ukrainian (extended version).
Anyway new Xorg and Gnome are going to be released soon, so let's hope that there won't be bugs with any configuration.
What is the status of this bug?
I have just made my US-RU layout switch working through HAL... please see the attached fdi and xorg.conf files.
Note: after changing the fdi file both HAL and X should be restarted.
xorg.conf (0.8 KiB)