Procurando uma maneira de melhorar a detecção de palmeira de synaptic / touchpad

12

Acho que a detecção de palma do meu touchpad é bastante ruim. Eu configurei a sensibilidade mínima para não estragar o uso do touchpad (PalmMinWidth = 5, PalmMinZ = 1), e ainda recebo solavancos aleatórios sempre que digito no teclado.

Eu prefiro usar a detecção de palma do que desativar o teclado enquanto digito, porque acho que o teclado está desabilitado por um período muito longo (ou seja, eu terminei de digitar e tenho que esperar 2 segundos antes de usar o teclado novamente, é chato). Uma estratégia possível seria reduzir esse atraso, embora eu não tenha certeza se o touchpad permanecerá utilizável (se você souber como fazer isso, poste, melhor que nada :).

Sempre que uso janelas, percebo que não estou tendo tantos problemas com o touchpad, por isso deve haver uma maneira de melhorar a detecção de palmas?

Por fim, estou executando o Debian testando 64 bits no kernel linux 3.2.0-rc7.

    
por levesque 04.01.2012 / 17:48

3 respostas

12

Eu tive problemas semelhantes e encontrei a resposta em este blog esteja razoavelmente completo e tenha copiado os detalhes relevantes:

Configure a detecção de palma:

Ative a detecção da palma, em um tipo de terminal:

$ synclient PalmDetect=1

Defina a largura máxima que deve ser interpretada como um dedo em vez de uma palma da mão. Eu escolho 4, a maioria dos how-tos usa 10, é bom fazer um pouco de suposição e testar aqui:

$ synclient PalmMinWidth=4

Em seguida, defina a altura mínima de uma palma em relação a um dedo:

$ synclient PalmMinZ=50 

Finalmente, no Ubuntu, o clique do meio do dedo de 3 dedos não está habilitado por padrão, então se você quiser habilitá-lo use:

$ synclient TapButton2=3 TapButton3=2

Em teoria, isso deve permitir 2 toques de dedo para o clique do meio e 3 toques para o botão direito, mas no Ubuntu 13.04 o comportamento resultante é exatamente o oposto. Portanto, se você preferir tocar com 2 dedos para uso do clique do meio:

$ synclient TapButton2=2 TapButton3=3 

Para torná-lo permanente depois de encontrar as configurações corretas, salve-as em 50-synaptics.conf , que está localizado em /usr/share/X11/xorg.conf.d/50-synaptics.conf no Debian / Ubuntu (Semplice) e em /etc/X11/xorg.conf.d/50-synaptics.conf em distros baseadas no Arch Linux (o primeiro " InputClass "parte é para a correção de clique do meio multitoque, que já está habilitada no Arch, então você não precisa adicioná-la):

Section "InputClass"
    Identifier "touchpad catchall"
    Driver "synaptics"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Option "TapButton1" "1"
    Option "TapButton2" "2"
    Option "TapButton3" "3"
    Option "HorizTwoFingerScroll" "on"
    Option "VertTwoFingerScroll" "on"
EndSection


#synclient PalmDetect=1
Option "PalmDetect" "1"
#synclient PalmMinWidth=4
Option "PalmMinWidth" "4"
#synclient PalmMinZ=50
Option "PalmMinZ" "50"

Desativando temporariamente o touch pad ao digitar:

Em vez de usar comandos synclient, use o syndaemon:

$ syndaemon -K -i 0.5 -R -d 

O arch wiki afirma que, se você salvar este comando no arquivo ~/.xinitrc , ele será executado automaticamente no seu próximo login. No entanto, quando fiz isso, não sabia que o comando deveria acontecer antes do lançamento da área de trabalho ( exec DESKTOP.session command). Depois de brincar com uma tonelada de outros arquivos de configuração e aprender muito sobre o gerenciador de exibição SLiM, finalmente percebi que o comando precisava ser movido ainda mais para cima no arquivo, já que os comandos após o lançamento da área de trabalho não seriam executados até o desktop é sair.

    
por 26.06.2014 / 04:21
4

Encontrei o caminho para modificar o período de tempo durante o qual o touchpad é desativado durante a digitação. Para qualquer outra pessoa que esteja procurando por ela, aqui está:

Nota: uma pesquisa no google produz a resposta com rapidez suficiente

Basta executar o programa syndaemon -d e adicionar como uma opção -i wait_time em que wait_time é o tempo de espera antes de reativar o touchpad. Outros parâmetros úteis para fornecer o syndaemon incluem -K para nunca desabilitar o touchpad quando os pressionamentos de teclas são do modificador de formato + key e -t para desabilitar somente os cliques e não os movimentos do mouse.

Então, no meu caso, adicionei o seguinte a um script que eu executo no login:

#Get rid of previous syndaemon
killall syndaemon
#More aggressive behavior, allow for mod+key combos, enable mouse movements
syndaemon -i 0.2 -K -t -d

Com todas essas modificações, especialmente a -t flag, posso viver com o touchpad como é agora!

    
por 07.01.2012 / 18:18
1

Eu tenho um laptop moderno com um grande Touchpad e metade do tempo, minha palma direita estava na borda e fazendo cliques falsos enquanto digito. O método PalmDetect = 1 do synclient não estava funcionando para mim (não importa o que eu definisse PalmMinWidth e PalmMinZ como). Talvez tenha sido o fato de que minha palma estava tocando o bloco da direita e a palma da mão pode estar verificando a partir do topo. Eu não sei com certeza.

Eu resolvi o problema fazendo uma zona morta na borda direita. É assim que você faz:

synclient 

fornecerá as configurações atuais do touch pad. de interesse são estes resultados aqui:

LeftEdge                = 1572
RightEdge               = 5370
TopEdge                 = 1376
BottomEdge              = 4480

Obviamente, os números irão variar dependendo do hardware. Olhe para a borda que você quer. No meu caso, foi a borda certa. Eu escolhi uma quantia que queria fazer a barba. Você quer reduzir o menor número possível para você enquanto bloqueia cliques falsos de sua palma da mão. Um teste muito fácil seria encontrar uma imagem clicável na web, passar o mouse sobre o centro e descansar a palma da mão onde você normalmente estaria digitando. Para simular a digitação, bata (levemente!) A borda do touch pad com a parte da palma da mão que normalmente se projeta sobre ele quando você digita. Se você receber cliques, saberá imediatamente. Vai ser tentativa e erro, continue brincando até chegar ao ponto ideal. No meu caso, raspar 30 fez o truque:

synclient AreaRightEdge=5340

Para modificar as outras arestas, altere AreaBottomEdge, AreaLeftEdge ou AreaTopEdge. Definir esses valores de volta para 0 irá desativá-los.

    
por 25.12.2017 / 19:29