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;
}
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 */ rdEvent( pInfo-> dev, code, 1); rdEvent( pInfo-> dev, code, 0);
if(ev->code == KEY_VOLUMEDOWN || ev->code == KEY_VOLUMEUP)
{
//post a keydown and then a keyup, as media keys have no automatic key-up
xf86PostKeyboa
xf86PostKeyboa
return;
}
?
(I posted information about a temporary 'fix' here: http:// ubuntuforums. org/showthread. php?t=974723)