[Pkg-xfce-devel] Bug#490410: xfce4-xkb-plugin: Same issue with us, cz keyboard layout, more details, workaround
- Subject: [Pkg-xfce-devel] Bug#490410: xfce4-xkb-plugin: Same issue with us, cz keyboard layout, more details, workaround
- From: jen at jikos.cz (Jan Capek)
- Date: Sat, 16 Aug 2008 22:33:23 +0200
- Message-id: <[🔎] 20080816203323.19148.49995.reportbug@pippin>
Package: xfce4-xkb-plugin
Version: 0.4.3-1
Followup-For: Bug #490410
Hi,
I have just experienced the same bug using a combination of us and cs
layout. This is the relevant part of the my xorg.conf:
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "XkbRules" "xorg"
Option "XkbModel" "microsoftprousb"
Option "XkbLayout" "us,cz"
Option "XkbVariant" ",qwerty"
Option "XkbOptions"
"grp:alt_shift_toggle,grp_led:scroll"
EndSection
I have played with the sources a bit and have loaded the xkb plugin into
gdb and have found out the following:
- upon startup in xkb.c::initialize_xkb(), the plugin tries to fill two
arrays(group_names and symbol_names) based on data provided by the xkb
extension. The contents of these arrays differs depending on whether the
instance of the xkb plugin comes from a the actual startup of the entire
xfce4 environment or if I RESTART xfce4panel.
- after launching xfce4 via startx. The arrays contain information for
the US keyboard only:
(gdb) p group_names
$16 = {0x1819eb0 "USA", 0x0, 0x0, 0x0}
(gdb) p symbol_names
$18 = {0x181a410 "US", 0x0, 0x0, 0x0}
(gdb) c
Continuing.
- after restarting the xfce4-panel (thus reloading the xkb plugin), I
can see the arrays already contain the expected values:
Breakpoint 11, handle_xevent (ctrl=0x1541ef0) at xkb.c:411
(gdb) p group_names
$19 = {0x1581f80 "USA", 0x1581de0 "Czechia - qwerty", 0x0, 0x0}
(gdb) p symbol_names
$20 = {0x1582570 "US", 0x1582590 "CZ", 0x0, 0x0}
Could this be some kind of race between the X server loading both
layouts and the xfce4 startup, or something like that? The plugin's
initialization function that loads the above arrays is very messy and
seems to contain quite a few hacks and workaround. I can investigate
further but I am not an xkb guru.
Actually, I currently need some workaround for this - something like
restart xfce4-panel as xfce4 runs on my parent's machine and they are
really getting confused on seeing (null) instead of the flag..
Best regards and thanks for any info,
Jan
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.26-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=cs_CZ.UTF-8, LC_CTYPE=cs_CZ.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages xfce4-xkb-plugin depends on:
ii libatk1.0-0 1.22.0-1 The ATK accessibility toolkit
ii libc6 2.7-13 GNU C Library: Shared libraries
ii libcairo2 1.6.4-6 The Cairo 2D vector graphics libra
ii libfontconfig1 2.6.0-1 generic font configuration library
ii libglib2.0-0 2.16.5-1 The GLib library of C routines
ii libgtk2.0-0 2.12.11-3 The GTK+ graphical user interface
ii libpango1.0-0 1.20.5-1 Layout and rendering of internatio
ii libx11-6 2:1.1.4-2 X11 client-side library
ii libxcursor1 1:1.1.9-1 X cursor management library
ii libxext6 2:1.0.4-1 X11 miscellaneous extension librar
ii libxfce4util4 4.4.2-3 Utility functions library for Xfce
ii libxfcegui4-4 4.4.2-4 Basic GUI C functions for Xfce4
ii libxfixes3 1:4.0.3-2 X11 miscellaneous 'fixes' extensio
ii libxi6 2:1.1.3-1 X11 Input extension library
ii libxinerama1 2:1.0.3-2 X11 Xinerama extension library
ii libxrandr2 2:1.2.3-1 X11 RandR extension library
ii libxrender1 1:0.9.4-2 X Rendering Extension client libra
ii xfce4-panel 4.4.2-6 The Xfce4 desktop environment pane
xfce4-xkb-plugin recommends no packages.
xfce4-xkb-plugin suggests no packages.
-- no debconf information
Reply to: