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

Bug#259740: Windows key no longer treated as modifer, just as Super_L



I'm still seeing this bug with XFree86 4.3.0.dfsg.1-6ubuntu11 (synced to
SVN trunk @ r1777).  Fabio M. Di Nitto told me to follow up as this
should have been fixed.

I have a normal British "Windows" keyboard with the Windows/Menu keys,
configured like this:

Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "keyboard"
        Option          "CoreKeyboard"
        Option          "XkbRules"      "xfree86"
        Option          "XkbModel"      "pc104"
        Option          "XkbLayout"     "gb"
EndSection

xmodmap says this:

$ xmodmap
xmodmap:  up to 3 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),  Alt_L (0x7d),  Meta_L (0x9c)
mod2        Num_Lock (0x4d)
mod3
mod4        Super_L (0x7f),  Hyper_L (0x80)
mod5        Mode_switch (0x5d),  ISO_Level3_Shift (0x7c)

Not totally understanding the X keyboard model, I'll try and explain
what happens.

My Metacity is configured to switch workspaces on super-arrows.  When I
let go of the super/Windows key I'd expect the workspace switching popup
to go, but it persists until I press it again, as if it wasn't a
modifier key.

The magic xmodmap line:

  xmodmap -e 'clear mod4' -e 'add mod4 = Super_L'

fixes this temporarily.

My GNOME keyboard settings applet says that "super is mapped to the
Windows key" is the default setting.

Pressing and releasing the left Windows key in xev produces these:

KeyPress event, serial 26, synthetic NO, window 0x3000001,
    root 0x8e, subw 0x0, time 1593258, (104,3), root:(108,539),
    state 0x0, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyRelease event, serial 26, synthetic NO, window 0x3000001,
    root 0x8e, subw 0x0, time 1593375, (104,3), root:(108,539),
    state 0x40, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

When I go to the GNOME keybindings applet to configure a super-key
combination, when I press the super key it doesn't wait for a key along
with the modifier, but stops at "Super_L".  If I use Meta it waits for
me to hit another key and will display something like "<Alt>5".

Anything else I can do to help debug this?

Ross
-- 
Ross Burton                                 mail: ross@burtonini.com
                                          jabber: ross@burtonini.com
                                     www: http://www.burtonini.com./
 PGP Fingerprint: 1A21 F5B0 D8D0 CFE3 81D4 E25A 2D09 E447 D0B4 33DF




Reply to: