I have a Cherry keyboard with four special keys at the bottom: a "minus", a "plus", a "mute", and a "media" key (XF86AudioLowerVolume, XF86AudioRaiseVolume, XF86AudioMute, and XF86Tools). I use the minus, plus, and mute keys a lot to control the volume.
Today, however, when I pressed the minus or plus key, the volume bar increased or decreased as if I had been holding the key down instead of releasing it right after pressing it. The graphical volume bar, which is shown each time I press one of those keys and that normally disappears again after a few seconds, did not disappear anymore. Additionally, it becomes impossible to move other windows around; they're simply stuck in their place and I have to close them all and relogin for everything to be normal again.
Pressing the opposing key (for example, pressing the minus key if I pressed the plus key before) results in the volume bar going into the other direction without stopping.
I tried the program xev to capture the key events and found that all of the four keys (the mute and media keys, too) seem to get pressed and released indefinitely, even though I only press a key once and release it again immediately.
This is an example from xev's output when I press the plus key once.
- Code: Select all
KeyPress event, serial 41, synthetic NO, window 0x4600001,
root 0x158, subw 0x0, time 16788480, (165,3), root:(166,82),
state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 41, synthetic NO, window 0x4600001,
root 0x158, subw 0x0, time 16788514, (165,3), root:(166,82),
state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 41, synthetic NO, window 0x4600001,
root 0x158, subw 0x0, time 16788514, (165,3), root:(166,82),
state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 41, synthetic NO, window 0x4600001,
root 0x158, subw 0x0, time 16788548, (165,3), root:(166,82),
state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 41, synthetic NO, window 0x4600001,
root 0x158, subw 0x0, time 16788548, (165,3), root:(166,82),
state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 41, synthetic NO, window 0x4600001,
root 0x158, subw 0x0, time 16788581, (165,3), root:(166,82),
state 0x0, keycode 123 (keysym 0x1008ff13, XF86AudioRaiseVolume), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
I removed all of these keys from my keyboard shortcuts so that they can do no more harm, but I'd like to be able to use these keys again. What can I do? Is this a hardware fault?
Thank you in advance for your help.

