Ubuntu MATE 17.04 - desabilitando a aceleração do mouse para completamente o movimento do ponteiro

1

Já há algum tempo eu estava aborrecido com o comportamento do meu mouse, mas eu estava culpando na superfície usada, não no mouse. Hoje tenho melhor superfície para mousepad e descobri que não consigo usar meu mouse com precisão, usando nem mouses conectados a fio ou sem fio. Depois de algumas pesquisas, descobri que a aceleração do mouse está ativada por padrão, e a maioria das soluções sugeridas é:
1) Usando o comando xset m 0 0 (este parece funcionar, mas não parece solução permanente sólida)
2) Criando o arquivo .conf em /usr/share/X11/xorg.conf.d / com conteúdo como este:

Section "InputClass"
           Identifier "My Mouse"
           Driver "libinput"
           MatchIsPointer "yes"
           Option "AccelProfile" "flat"
EndSection

3) Usando xinput set-prop [device-id] [Accel Profile Enabled id] 0,1

Mas o problema é que, depois de definir o perfil de aceleração como "plano" com esses métodos, meu ponteiro do mouse para de se mover completamente. Mouse funciona, clique com o botão esquerdo / clique direito, ele é conectado e listado. Mas qualquer movimento é ignorado.

Por exemplo, temos essa propriedade:
libinput Accel Profile Enabled (278): 1, 0
Depois de executar o comando xinput set-prop 11 278 0, 1 , qualquer movimento do mouse é ignorado. Depois que eu corro xinput set-prop 11 278 1, 0 tudo volta ao normal.

Isso acontece em ambos os mouses que eu tenho.
Pergunta: Como desativar corretamente a aceleração do mouse no Ubuntu MATE 17.04 e definir o perfil "flat", e o que pode causar problemas no meu caso?

    
por Ethuil UI 03.08.2017 / 18:00

1 resposta

1

Depois de pesquisar, consegui encontrar o núcleo desse problema.

Por que o movimento do mouse pode ser ignorado após a definição do perfil plano (sem aceleração)?

A resposta a essa pergunta era simples e o problema estava na configuração do libinput chamada Accel Speed . Por mais confuso que seja, quando você está usando o flat no acceleration profile, esta configuração irá atuar como um tipo de configuração de "sensibilidade" na maioria dos usuários, mas na faixa de 0% a 200%, correspondendo à velocidade do cursor. -1 seria 0%, 0 seria 100%, 1 seria 200% para velocidade do cursor.
Pelo que entendi, quando você move o mouse, o ponteiro (cursor) se move na distância de X + X*As , onde X é o valor básico de quanto cursor precisa ser movido e Como é o valor de < opção strong> Accel Speed . O que significa que, se por algum motivo o valor dessa configuração for -1, o que pode acontecer enquanto você tenta ajustar a sensibilidade usando alguma GUI para o controle do mouse ou manualmente, o movimento do mouse será calculado assim "X + X * -1 ", que é basicamente" XX ", o que significa que o cursor não se move.

Portanto, se você tiver um problema parecido, a primeira coisa a fazer é verificar o valor dessa opção.

1) Listar dispositivos com o comando:
xinput list

2) Encontre o ID do seu mouse e use este comando para ver os valores atuais de suas opções:
xinput list-props 12
Onde "12" seria o ID do seu dispositivo na saída "xinput list".

3) Se "libinput Accel Speed" for -1 e você estiver usando o perfil plano, você poderá alterá-lo com o comando:
xinput --set-prop 12 'libinput Accel Speed' 0

Portanto, se você tiver o mouse travado depois de ativar o perfil simples, basta alternar para o console \ terminal e executar essas 3 etapas para corrigir o problema.

Estou adicionando a solução que usei para desativar a aceleração e ajustar a velocidade do Accel apenas no caso de alguém tropeçar nessa busca de resposta.

Como definir o perfil plano \ desativar a aceleração do mouse permanentemente

Para definir permanentemente o libinput para um perfil simples e sem alterar a sensibilidade básica, basta editar esse arquivo:
/usr/share/X11/xorg.conf.d/40-libinput.conf
Deve ter seção com identificador "catchall ponteiro libinput". Por padrão, o meu era assim:

[...]
Section "InputClass"
        Identifier "libinput pointer catchall"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
EndSection
[...]

Você pode forçá-lo a usar configurações específicas necessárias, adicionando duas linhas após a linha "Driver":

[...]
Section "InputClass"
        Identifier "libinput pointer catchall"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "AccelProfile" "flat"
        Option "AccelSpeed" "0.0"
EndSection
[...]

A opção "AccelProfile" informará ao sistema para usar o perfil plano, sem aceleração.

Opção "AccelSpeed" irá definir o padrão para o modificador da velocidade básica do ponteiro, que é bastante sensibilidade. Configurando para "1" irá dobrar a velocidade do ponteiro, -1 irá ajustá-lo para 0, 0,5 faria 150%.

Depois de salvar as alterações, você pode apenas reiniciar o GDE com service lightdm restart ou apenas reiniciar o PC manualmente e verificar se libinput usa valores corretos agora.

Ao executar o comando:
xinput list-props {1..50} 2>/dev/null | fgrep 'libinput Accel Profile Enabled ('
você pode verificar se o sistema usa perfil plano.

Para o perfil plano, ele deve retornar 0, 1 valor assim:
libinput Accel Profile Enabled (282): 0, 1

E verifique o valor da velocidade de aceleração com um comando semelhante:
xinput list-props {1..50} 2>/dev/null | fgrep 'libinput Accel Speed ('
Se após a reinicialização você tiver valores correspondentes ao que você definiu no arquivo 40-libinput.conf , tudo funcionará como deveria.
Para soluções alternativas e mais informações, você pode pesquisar esses links: link
="https://askubuntu.com/q/172972/694763"> Configurar a velocidade do mouse (não a aceleração do ponteiro!)

    
por Ethuil UI 14.08.2017 / 22:56