[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#531771: xkb-data: level 3 switch not working anymore



I confirm this bug (?). Level3 does work any more in some (xlib?)
applications like e.g. urxvt but not in other (libgtk?) applications
like evolution. Setup with xkb-data 1.6-1 as follows:

xorg.conf:

Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "kbd"
        Option          "CoreKeyboard"
        Option          "XkbRules"      "xorg"
        Option          "XkbModel"      "apple_laptop"
        Option          "XkbLayout"     "de"
        Option          "XkbVariant"    "mac_nodeadkeys"
        Option          "XkbOptions"    "lv3:win_switch"
EndSection

setxkbmap -print:

xkb_keymap {
	xkb_keycodes  { include "xfree86+aliases(qwertz)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete"	};
	xkb_symbols   { include "pc+de(mac_nodeadkeys)+level3(win_switch)"	};
	xkb_geometry  { include "pc(pc104)"	};
};

xmodmap: 

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x6d)
mod1        Alt_L (0x40),  Meta_L (0x9c)
mod2        Num_Lock (0x4d)
mod3      
mod4        ISO_Level3_Shift (0x73),  ISO_Level3_Shift (0x74),  Super_L
(0x7f),  Hyper_L (0x80)
mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x71),
ISO_Level3_Shift (0x7c)

xmodmap -pke | grep Level3
keycode 113 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift NoSymbol
ISO_Level3_Shift
keycode 115 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift NoSymbol
ISO_Level3_Shift
keycode 116 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift NoSymbol
ISO_Level3_Shift
keycode 124 = ISO_Level3_Shift NoSymbol ISO_Level3_Shift NoSymbol
ISO_Level3_Shift

xev:

According to xev the left and right "Win-Keys" (= Apple-Keys on the mac
keyboard) both have keycode 0x73:

KeyPress event, serial 25, synthetic NO, window 0x1600001,
    root 0x11c, subw 0x0, time 12205667, (478,468), root:(479,490),
    state 0x10, keycode 115 (keysym 0xfe03, ISO_Level3_Shift),
same_screen YES,
    XKeysymToKeycode returns keycode: 113
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x1600001,
    root 0x11c, subw 0x0, time 12205717, (478,468), root:(479,490),
    state 0xd0, keycode 115 (keysym 0xfe03, ISO_Level3_Shift),
same_screen YES,
    XKeysymToKeycode returns keycode: 113
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 28, synthetic NO, window 0x1600001,
    root 0x11c, subw 0x0, time 12206856, (478,468), root:(479,490),
    state 0x10, keycode 115 (keysym 0xfe03, ISO_Level3_Shift),
same_screen YES,
    XKeysymToKeycode returns keycode: 113
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 28, synthetic NO, window 0x1600001,
    root 0x11c, subw 0x0, time 12206907, (478,468), root:(479,490),
    state 0xd0, keycode 115 (keysym 0xfe03, ISO_Level3_Shift),
same_screen YES,
    XKeysymToKeycode returns keycode: 113
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False


Removing Super and Hyper from mod4 in a working Level3 at least for
emacs22-gtk but no other applications.

There's no hint in either xkb-data/changelog.Debian.gz nor
xkb-data/changelog.gz that explains this bug (?) to me.

What else could I contribute to help analyzing the lacking Level3
function?





Reply to: