[ltp] menu key generates NoSymbol? - some progress

Micha linux-thinkpad@linux-thinkpad.org
Sun, 3 Aug 2008 00:20:48 +0300


On Mon, 28 Jul 2008 23:48:27 +0300
Micha <michf@post.tau.ac.il> wrote:

> I just realised that with my new installation the menu key (one of the windows
> specific keys) is generating (xev output)
> 
> KeyRelease event, serial 33, synthetic NO, window 0x4400001,
>     root 0x13b, subw 0x0, time 44339898, (126,90), root:(877,536),
>     state 0x0, keycode 227 (keysym 0x0, NoSymbol), same_screen YES,
>     XLookupString gives 0 bytes: 
>     XFilterEvent returns: False
> 
> It worked with the previous installation and same xorg.conf. Any ideas?
> keyboard at the moment is set as:
> 
> Section "InputDevice"
>         Identifier      "Keyboard"
>         Driver          "kbd"
>         Option          "CoreKeyboard"
>         Option          "XkbRules"                      "xorg"
>         Option          "XkbModel"                      "pc104"
>         Option          "XkbLayout"                     "us,il"
>         Option          "XkbVariant"                    ",lyx"
>         Option          "XkbOptions"                    "grp:alt_shift_toggle"
> EndSection
> 
> thanks

It seems that the menu key generated to wrong scan code and I had to map it
using
xmodmap -e "keycode 227=Menu"
and it solved the problem. I have yet to reboot again but after the last reboot
I noticed that this is no longer in .Xmodmap (must have erased it) and it still
works so it's probably remembered somewhere.

As for the thinkvantage key, it was not issuing anything at all. It is giving
an acpi event and acpid was set up to generate $KEY_PROG1(=148) using
acpi_fakekey but for some reason X refused to acknowledge that keycode.
Changing it to $KEY_COMPUTER(=157) seems to have solved that, although the scan
code seems to be 235 according to xev so it seems that the numbers change
somewhere. Still had to do
xmodmap -e "keycode 235=XF86Launch0"
for x to actually acknowledge the key (otherwise it was a NoSymbol again). Any
idea as to why the keycode doesn't match between acpi_fakekey and X and why
code 148 doesn't work?

Thanks