Desactivar o touchpad depois de suspender / retomar

2

Existem várias perguntas sobre a desativação de touchpads em laptops neste site, mas nenhuma delas parece responder à minha pergunta.

Desejo desativar meu touchpad (fiz esse bit) e mantê-lo desativado após uma suspensão / retomada (estou falhando aqui).

Estou executando o Ubuntu 12.04 em um laptop chinês barato.

Eu tenho um arquivo executável / home / yannick / bin / notouch que se parece com isto:

xinput set-prop 'xinput list | grep "ImPS/2 Generic" | awk '{print $7}' | sed "s/id=//"' "Device Enabled" 0

O script executa xinput uma vez para obter o número de identificação (o que acaba sendo) meu touchpad e, em seguida, executa xinput novamente para desativar o touchpad. Eu tenho isso no meu .bashrc e em outros lugares.

Atualmente, quando eu suspendo e retomo meu laptop, o touchpad fica ativo novamente e eu realmente quero impedir que isso aconteça. Então eu também tenho um arquivo

/etc/pm/sleep.d/97disable_touchpad (de propriedade de root, + x) que se parece com isto:

#!/bin/bash
case "$1" in
    thaw|resume)
        /home/yannick/bin/notouch 2>/tmp/notoucherrors
        ;;
    *)
        ;;
esac
exit $?

E danado, não funciona! De fato, o script parece rodar após um currículo, e o conteúdo de / tmp / notoucherrors é:

Unable to connect to X server
Unable to connect to X server

Caramba Eu quero que meu touchpad fique desativado quando eu hibernar e retomar. Como faço isso acontecer?

Aqui estão outras duas coisas que tentei e que não consegui trabalhar:

1) $ synclient TouchpadOff = 1

Isso retorna

Couldn't find synaptics properties. No synaptics driver loaded?

2) Configurações do sistema - > Mouse e Touchpad. Eu só tenho opções para mouse lá (eu diria até mesmo que o ubuntu acha que meu touchpad é um mouse por algum motivo). Em particular, não há nenhuma opção para desativar o touchpad - tudo que eu tenho são opções de mouse (geral, velocidade do ponteiro, arrastar e soltar, clique duas vezes no tempo limite).

    
por Yannick 17.09.2013 / 22:46

2 respostas

1

Eu tenho uma solução parcial que fará por enquanto - eu configurei aleatoriamente a variável DISPLAY e espero. Funciona por enquanto. Eu também executo o notouch como meu userid (em vez de root).

Meu script disable_touchpad em sleep.d agora é assim:

#!/bin/bash
case "$1" in
    thaw|resume)
        echo "running notouch" >> /tmp/notouchlogger
        export DISPLAY=:0
        su -c - yannick /home/yannick/bin/notouch 2>>/tmp/notoucherrors
        ;;
    *)
        ;;
esac
exit $?

e parece funcionar.

    
por Yannick 18.09.2013 / 08:45
0

Com privilégios de root, tente criar o arquivo /etc/pm/sleep.d/0000trackpad.

sudo -i gedit /etc/pm/sleep.d/0000trackpad

digite sua senha se necessário após o código a seguir em gedit e salve o arquivo

#!/bin/sh
case "$1" in
    resume)
        DISPLAY=:0.0 su USER -c '/usr/bin/synclient TouchpadOff=0' ;;
esac

faça logout e volte novamente

    
por vrishabh 02.03.2014 / 05:34