Eu tenho um mouse que apenas uso nos botões. Eu quero desativar apenas a entrada de movimento do mouse. Cobrir fisicamente o sensor não funciona.
9
Você pode usar xinput
.
>xinput --list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Mouse0 id=6 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Keyboard0
Lá você obtém o nome do mouse, neste caso, Mouse0.
Com o comando a seguir, você diminui a velocidade do mouse por um fator de 100000, que é basicamente zero.
xinput --set-prop 6 'Device Accel Constant Deceleration' 100000
ou
xinput --set-prop Mouse0 'Device Accel Constant Deceleration' 100000
Para reverter, você pode usar o mesmo
xinput --set-prop Mouse0 'Device Accel Constant Deceleration' 1
xinput list 6
(onde6
está o dispositivo). Documentação sobre as propriedades pode ser encontrada aqui: x.org/wiki/Development/Documentation/PointerAccelerationMeu mouse não possui a propriedade 'Desaceleração constante do dispositivo'. Eu ainda era capaz de desativar o movimento com
e reative-o com
Também desabilitei meus botões com
O dispositivo 9 é o meu mouse óptico USB Mitsumi elétrico da Apple .
Lista de dispositivos
fonte
Se eu leio
man 4 mousedrv
corretamente, você pode definir, na seção CorePointer do seu xorg.conf,que converteria movimentos em eventos de botão da roda do mouse, mas a configuração de inércia tornaria insensível demais registrar um. Nos sistemas modernos, é evdev em vez de mousedrv. Isso também pode ser definido em tempo de execução usando o xinput, por exemplo:
Onde 17 deve ser o seu próprio número de dispositivo. Uso uma função para obter esse número pelo nome do dispositivo e armazená-lo em $ device-id durante um script de inicialização.
Infelizmente, isso tem o efeito colateral de desativar a entrada da roda de rolagem do dispositivo.
fonte