Desabilita roda de rolagem emulada (EmulateWheel) para programas específicos

1

É possível desativar a opção EmulateWheel do evdev ao usar programas específicos? No meu caso de uso, gostaria de poder interagir com o editor de texto Acme e com algumas VMs usando o botão do meio do trackpad do meu Thinkpad como apenas um botão do meio comum em vez de um "EmulateWheelButton".

Seria menos conveniente, mas aceitável, se houvesse um comando simples para ativar e desativar a emulação, para que eu pudesse vincular esse comando a uma tecla de atalho para que eu pudesse alterná-lo manualmente.

    
por Anschel Schaffer-Cohen 28.01.2014 / 03:31

1 resposta

2

Você pode modificar as propriedades dos dispositivos de entrada com o xinput comando. Veja Faça movimentos do mouse percorra quando o botão do meio estiver pressionado para obter uma explicação detalhada. Você vai querer algo como

xinput --set-prop 'Thinkpad Trackpoint' 'Evdev Wheel Emulation' 0

em que Thinkpad Trackpoint é o nome do dispositivo encontrado na saída de xinput list e o valor final é 0 para desativar e 1 para ativar.

Estas opções não podem ser alteradas com base no programa ativo. Alguns gerenciadores de janela avançados permitem que você execute programas arbitrários em um comutador de foco. Alguns gerenciadores de janelas avançados (a maioria é o mesmo, espero) permitem programar algo como o EmulateWheel, que ocorre apenas em determinadas janelas. Eu esperaria que Fvwm, Sawfish, Awesome e Xmonad lidassem com uma quantidade não trivial, mas não intransponível de codificação, e não muitos mais.

    
por 29.01.2014 / 02:58