Comment 7 for bug 278781

Revision history for this message
ktemkin (kyle-ktemkin) wrote :

This isn't a duplicate of the gnome power manager bug.

The issue is that on certain systems' PS/2 keyboards, the volume control keys (and certain media keys) report a KEY_DOWN when they're pressed, but not a KEY_UP when they're released. The result of this is that the system acts like they're stuck- and repeats them indefinitely, preventing use of the keyboard and/or mouse.

Why don't we implement the same solution that was implemented in the old Xorg KBD drivers?

That is, add to the PostKbdEvent() function in evdev.c something along the lines of:

    /* fix events for volume keys */
    if(ev->code == KEY_VOLUMEDOWN || ev->code == KEY_VOLUMEUP)
    {
 //post a keydown and then a keyup, as media keys have no automatic key-up
 xf86PostKeyboardEvent(pInfo->dev, code, 1);
 xf86PostKeyboardEvent(pInfo->dev, code, 0);
 return;
    }

?

(I posted information about a temporary 'fix' here: http://ubuntuforums.org/showthread.php?t=974723)