Ok, achei isso em link
% bl0ck_qu0te% Então códigos de chaves são mapeados para keysym's, Então, onde estão os keysym's? Eu encontrei e respondi a essa pergunta: Onde encontro uma lista de todos os keyyms X atualmente? Como estamos falando sobre as teclas de volume, elas podem ser encontradas em XF86keysym.h
no código-fonte mencionado na resposta.
Nesse arquivo no meu computador, encontrei o seguinte para o volume:
#define XF86XK_AudioLowerVolume 0x1008FF11 /* Volume control down */
#define XF86XK_AudioMute 0x1008FF12 /* Mute sound from the system */
#define XF86XK_AudioRaiseVolume 0x1008FF13 /* Volume control up */
Estranho ... valores diferentes de qualquer outra coisa, talvez existam vários sistemas para manipular chaves? link
Estou usando o Xubuntu e, para controlar as teclas, preciso mapear as ações manualmente (como
Então, tenho certeza de que os programas agora estão pegando a chave (para que nenhum script seja encontrado).
No Xubuntu eu tive esse problema com o Pulse Audio e usando scripts personalizados para alterar o volume, parecia que o Pulse estava interceptando a tecla Mute, A tecla Mute silencia o Alsa e o PulseAudio, mas ativa o som apenas do Alsa para soluções interessantes.
Verifique isso no NotifyOSD link
Se você observar esses diagramas: link
Especialmente este:
Issomostraqueexisteum"ouvinte de chaves de hardware" que recebe o formulário DBus ou HAL? Em seguida, "recupera o elemento visual do sistema", que os ícones de som e brilho estão na origem do Notify-OSD e, em seguida, cria o balão a partir daí.
Isso tudo é confuso, mas até onde eu entendi (até agora):
scancode bruto (ex. e016) > código de acesso (ex. 160) > keysym (ex. XF86AudioMute) > gnome-settings-daemon (ex. aumentar volume) > Sinal de DBus > hardware-keys-listener para notify-osd (ou outro programa escutando)