GNOME Bugzilla – Bug 628529
Keyboard Layout: New windows always use active window's layout
Last modified: 2011-11-14 11:55:17 UTC
1. There are two keyboard layouts in my system keyboard settings (System - Preferences - Keyboard: Layouts): USA (first layout) and Russia (second layout). 2. Checkbox "Separate layout for each window" is checked. 3. But checkbox "New windows use active window's layout" does not works. I can check it or uncheck, but new windows always use active window's layout regardless of my choice in keyboard preferences. Сheckbox "New windows use active window's layout" has no effect on the behavior of the keyboard layout. ProblemType: Bug DistroRelease: Ubuntu 10.04 Package: gnome-control-center 1:2.30.1-0ubuntu1 ProcVersionSignature: Ubuntu 2.6.32-24.41-generic 2.6.32.15+drm33.5 Uname: Linux 2.6.32-24-generic x86_64 NonfreeKernelModules: nvidia Architecture: amd64 Date: Mon Aug 23 23:15:11 2010 ExecutablePath: /usr/bin/gnome-keyboard-properties InstallationMedia: Ubuntu 10.04 LTS "Lucid Lynx" - Release amd64 (20100429) ProcEnviron: LANG=en_US.utf8 SHELL=/bin/bash SourcePackage: gnome-control-center This bug on Launchpad Bugtracker: https://bugs.launchpad.net/ubuntu/+source/gnome-control-center/+bug/622965
Could you do the following experiment: 1. Put the gnome-terminal icon on the panel. 2. Configure two layouts, USA and Russian 3. Have the checkbox (New windows use active window's layout) checked. 4. Create new gnome-terminal by clicking the icon on the panel 5. Change the layout 6. Check that new g-t window inherits the layout of the previous window Repeat #4-#6 several times 7. Have the checkbox (New windows use active window's layout) unchecked 8. Create new gnome-terminal by clicking the icon on the panel 9. Change the layout 10. Check that new g-t window always uses USA layout (first in the list), regardless of what was the active layout in the previous g-t window Repeat #8-#10 several times That works for me (10.04 as well). Would it work for you?
(In reply to comment #1) > Could you do the following experiment: > .... > That works for me (10.04 as well). Would it work for you? That does not work for me (Ubuntu 10.04). New gnome-terminal window always use active window's layout.
In that case, please start gnome-settings-daemon in terminal (first kill existing instance), with env var XKL_DEBUG=150 and --no-daemon Then repeat steps ##7-10 Please attach here the output
I think I have quite the same problem. I use two layouts : French and French Bépo. I don't check the checkbox «Separate layout for each window» : I want active layout change only when I click on its code in the notifier applet. But when I use my second layout and I launch a new application, the active layout *sometimes* become the first one. This append too, sometimes, when I close a window. I said «sometimes», but if I launch Firefox, the active layout become the first one almost every time.
(In reply to comment #3) > In that case, please start gnome-settings-daemon in terminal (first kill > existing instance), with env var XKL_DEBUG=150 and --no-daemon > > Then repeat steps ##7-10 > > Please attach here the output Where should be the output file? Maybe I have something not understood. Can you give a step-by-step instruction?
In gnome-terminal, you should do: killall gnome-settings-daemon export XKL_DEBUG=160 gnome-settings-daemon --no-daemon After that point, there will be a lot of things in gnome-terminal when you switch windows, change layouts etc.
Created attachment 170203 [details] debug output (gnome-settings-daemon --no-daemon) with XKL_DEBUG=150 > In that case, please start gnome-settings-daemon in terminal (first kill > existing instance), with env var XKL_DEBUG=150 and --no-daemon > Then repeat steps ##7-10 > Please attach here the output Console output attached.
Mikhail, sorry for delay. The bug got lost. I checked your log - it seems correct. The new window got group 0 which should be the default group for the new window. What's wrong about that? Is this bug still reproducable in the latest gnome?
Now I'm using Ubuntu 11.04 with Unity desktop. But this bug is still reproducible in both systems: one is upgraded from Ubuntu 10.04 and one is clean installed Ubuntu 11.04. This bug appears not every time when I switch keyboard layout and launch new application window, but sometimes. I'm using "Caps Lock" and "Right Ctrl + Right Shift" keys to change keyboard layout, may be this affects the bug.
The same is here for me on Natty using Unity or GNOME compiz sessions. Traditional GNOME sessions with metacity work ok. It is something with compiz vs GNOME because it obviously ignores that option and it is always ON, so new windows always got the latest active window layout.
(In reply to comment #10) > The same is here for me on Natty using Unity or GNOME compiz sessions. > Traditional GNOME sessions with metacity work ok. > > It is something with compiz vs GNOME because it obviously ignores that option > and it is always ON, so new windows always got the latest active window layout. Oleg, thank you for your addition. My experiments confirm your comment. This problem occurs only when using Gnome with Compiz window manager. If I boot into Gnome with Metacity [Ubuntu Classic (no effects)] the "New windows use active window's layout" option in the gnome-keyboard-properties works fine. To Sergey V. Udaltsov: Can you reproduce this bug with Gnome + Compiz? Should we forward this bug to the Compiz developers or it can be solved on the side of the gnome-control-center package?
Seeing as both Unity is based on compiz, is there any data points telling us that this isn't a compiz bug? I'm enclined to close this bug and have you report it to compiz/Unity because it doesn't affect GNOME...
(In reply to comment #12) > it doesn't affect GNOME... Are you shure? But gnome-control-center package is a part of Gnome. This bug affects Compiz, but it affects Gnome too. Is there any data points telling us that this isn't a Gnome bug? The problem is somewhere between Gnome and Compiz.
Unfortunately I cannot run Compiz on the HW I have. I would be inclined to say it is Compiz bug. Or it can be some kind of subtle race condition in X11 protocol handling (inside libxklavier) that is triggered by Compiz.
I do agree it is very comfortable to blame compiz causing the problem however it is a hypothesis. I would suggest the problem have to be reproduced and observed before reporting to compiz. Besides if anyone have time to test compiz with KDE, LXDE or XFCE it would be good contribution to 'divide & conquer' way of identifying the root of the problem.
There is another option. Instead of metacity, trying to run gnome with some different WMs (not compiz). Thanks God, gnome 2 allowed that.
What if Gnome sends the wrong keyboard layout parameter to Compiz? In that case it's a Gnome's bug.
GNOME does not send anything to Compiz, actually. It just configures X (which is a standard function - otherwise X would just fail to configre) and switches groups by number 1-4. Again, this is a command from g-s-d to X - either X is switching or not. Also, there is interaction with the window manager - g-s-d keeps the current group in the window property. That's where g-s-d interaction with compiz can fail, if compiz does not behave properly as window manager - or if there are some grey areas in the WM specs which g-s-d and compiz read differently).
I have switched to Ubuntu 11.10 and the bug is still there. I do not see any progress, so I reported it to Canonical as compiz related issue: #889484.
I'm closing this bug, as it only occurs with compiz (which Unity is based on). If you can actually reproduce the problem with GNOME 3 and gnome-shell, reopen the bug. Downstream bug: https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/889484