Comment 2 for bug 1042359

Revision history for this message
Stéphane Gourichon (stephane-gourichon-lpad) wrote : Re: Partially broken brightness hotkey handling.

Summary : interestingly, in a bare X session, xev does not react to those hotkeys, while it reacts to other. Does it mean the problem lies at X level ?

## General test

To isolate the problem, I logged in with an empty account running OpenBox only (no full desktop environment) and ran xev.

Here is the complete list of hotkeys I see when pressing special keys and Fn-* combinations, as reported by xev.

$ grep -o 'XF86[^ )]*' /tmp/xevlog.txt | sort | uniq
XF86AudioLowerVolume
XF86AudioMute
XF86AudioNext
XF86AudioPlay
XF86AudioPrev
XF86AudioRaiseVolume
XF86AudioStop
XF86Bluetooth
XF86Calculator
XF86Display
XF86Launch1
XF86Phone
XF86Sleep
XF86TouchpadToggle
XF86WebCam
XF86WLAN

They all occur at expected places, except XF86Phone (Fn-T, without other symbol), XF86Launch1 (Fn-C, symbol like a monitor showing letter S). Also pressing Fn-F2 shows XF86WLAN (expected) but also XF86Bluetooth a few seconds after (expected only XF86WLAN but that's probably a feature).

In bug description you can see which keys does what in regular desktop environment.

## Specific interesting part

Now, something different happens when pressing Fn-F5 (brightness down), Fn-F6 (brightness up) and Fn-F7 (backlight toggle, icon shows screen covered by a big X).

All three keys do change backlight as expected, but :

Fn-F5 (brightness down) cause no event seen by xev
Fn-F6 (brightness up) cause no event seen by xev
Fn-F7 (backlight toggle) causes the events below (it seems to be the only key that provides keycode 253):

KeyPress event, serial 48, synthetic NO, window 0x1600001,
    root 0xca, subw 0x0, time 704540, (23,116), root:(253,574),
    state 0x10, keycode 253 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 48, synthetic NO, window 0x1600001,
    root 0xca, subw 0x0, time 704540, (23,116), root:(253,574),
    state 0x10, keycode 253 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

## Now what ?

Does it mean that these keys are missing at X input driver level ?
I'd be okay to test some fix at the X level, so that this problem gets fixed.

Thanks.