Habilitar/Desabilitar Touchpad do notebook (usando gsettings)

Publicado por Rogério M. de Queiroz (última atualização em 18/08/2015)

[ Hits: 4.827 ]

Homepage: www.dataview.com.br / www.agilecti.com.br

Download toggleTouchpad.sh




Tenho um Dell XPS 13 e instalei recentemente o ArchLinux.

Não gosto do touchpad, pelo menos não quando estou programando. Logo senti falta de uma hotkey para poder desabilitar o touchpad sem ter que ir em Configurações(gnome-shell 3.16.3)--> Mouse & Touchpad e então desabilitar o touchpad.

É chato e não achei nenhuma extensão do gnome-shell que se parecesse com o indicator que tem para o Ubuntu. Logo fiz um script bem básico, porém funcional para quem utiliza o Gnome ou ambiente gráfico que faz uso do gsettings.

Depois é só adicionar o script como atalho personalizado do teclado(Utilizei CRT+shift+F7) para habilitar/desabilitar o touchpad.

Link vídeo ilustrativo: http://youtu.be/NcBp7TK8-0M

  



Esconder código-fonte

#!/bin/bash
#Criado por Rogério M. de Queiroz
#Data: 10/08/2015
#Uma simples solução para Habilitar/Desabilitar o touchpad do Dell XPS 13 9343.
#Podendo ser adicionado como atalho na tecla F7.
#

declare STATE
STATE=`gsettings get org.gnome.desktop.peripherals.touchpad send-events | tr \' X`
echo $STATE
if [ "$STATE" == 'XenabledX' ]
then
    gsettings set org.gnome.desktop.peripherals.touchpad send-events disabled
    echo "Touchpad disabled."
    notify-send -t 200 "Touchpad Disabled."
elif [ "$STATE" == 'XdisabledX' ]
then
    gsettings set org.gnome.desktop.peripherals.touchpad send-events enabled
    echo "Touchpad enabled."
    notify-send -t 200 "Touchpad Enabled."
else
    notify-send -t 200 "Touchpad in other mode."
fi

Scripts recomendados

Calcular o consumo de energia elétrica de eletrodomésticos

Selecionar wallpaper no Fluxbox (baseado no Xdialog)

montar partiçao fat

Remove linhas de arquivo

WPS Office Suite para Linux - Desastrosa primeira impressão


  

Comentários
[1] Comentário enviado por rtalon em 22/08/2015 - 17:03h

brow, gostei do teu script, utilizo um usando o synclient desde 2010, ja testei em varios linux, inclusive hoje no arch, fica a dica ai para estudo.

#!/bin/bash
#01/2010
#
# Habilitar/Desabilitar touchpad
#
v_status=$(synclient | grep TouchpadOff | awk '{print $3}')
if [ $v_status = "0" ]
then
synclient TouchpadOff=1
notify-send -a "TouchPad OFF ..." "Disable TouchPad" -i "touchpad-disabled-symbolic" -t 3000
else
synclient TouchpadOff=0
notify-send -a "TouchPad ON ..." "Enable TouchPad" -i "input-touchpad-symbolic" -t 3000
fi


Abraços

[2] Comentário enviado por Root_ em 23/08/2015 - 01:19h


[1] Comentário enviado por rtalon em 22/08/2015 - 17:03h

brow, gostei do teu script, utilizo um usando o synclient desde 2010, ja testei em varios linux, inclusive hoje no arch, fica a dica ai para estudo.

#!/bin/bash
#01/2010
#
# Habilitar/Desabilitar touchpad
#
v_status=$(synclient | grep TouchpadOff | awk '{print $3}')
if [ $v_status = "0" ]
then
synclient TouchpadOff=1
notify-send -a "TouchPad OFF ..." "Disable TouchPad" -i "touchpad-disabled-symbolic" -t 3000
else
synclient TouchpadOff=0
notify-send -a "TouchPad ON ..." "Enable TouchPad" -i "input-touchpad-symbolic" -t 3000
fi


Abraços


Vlw pela dica, só que o driver synaptic com o TouchPad do modelo do meu note as vezes trava. Logo utilizo outro driver e então não tem como utilizar o synclient.
Dessa forma que fiz, independente do driver do TouchPad, no gnome pelo menos vai funcionar.

[3] Comentário enviado por lcavalheiro em 26/08/2015 - 10:15h

Por curiosidade: seu notebook não tem aquela combinação de <Fn><alguma coisa> que faz essa tarefa não?
--
Luís Fernando Carvalho Cavalheiro
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta

[4] Comentário enviado por Root_ em 26/08/2015 - 15:13h


[3] Comentário enviado por lcavalheiro em 26/08/2015 - 10:15h

Por curiosidade: seu notebook não tem aquela combinação de &lt;Fn&gt;&lt;alguma coisa&gt; que faz essa tarefa não?
--
Luís Fernando Carvalho Cavalheiro
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta


Tem não Luíz Fernando. Apesar do dellXPS13 ser um excelente ultrabook... nem tudo é perfeito. xD

[5] Comentário enviado por ledcavalcanti em 10/03/2016 - 15:44h

Fui tentar usar no Linux Mint e não funcionou, então fiz algumas alterações (código abaixo) e aí deu certo. De qualquer forma, obrigado Rogério.

#!/bin/bash
#Criado por Rogério M. de Queiroz
#Data: 10/08/2015
#Uma simples solução para Habilitar/Desabilitar o touchpad do Dell XPS 13 9343.
#Podendo ser adicionado como atalho na tecla F7.
# Alterado por luiz cavalcanti em 10/03/16 pois tema original gnome do gsettings estava inválido
#

declare STATE
STATE=`gsettings get org.mate.peripherals-touchpad touchpad-enabled | tr \' X`
echo $STATE
if [ "$STATE" == 'true' ]
then
gsettings set org.mate.peripherals-touchpad touchpad-enabled false
echo "Touchpad disabled."
notify-send -t 1500 "Touchpad Disabled."
elif [ "$STATE" == 'false' ]
then
gsettings set org.mate.peripherals-touchpad touchpad-enabled true
echo "Touchpad enabled."
notify-send -t 1500 "Touchpad Enabled."
else
notify-send -t 1500 "Touchpad in other mode."
fi

[6] Comentário enviado por Root_ em 10/03/2016 - 17:34h


[5] Comentário enviado por ledcavalcanti em 10/03/2016 - 15:44h

Fui tentar usar no Linux Mint e não funcionou, então fiz algumas alterações (código abaixo) e aí deu certo. De qualquer forma, obrigado Rogério.

#!/bin/bash
#Criado por Rogério M. de Queiroz
#Data: 10/08/2015
#Uma simples solução para Habilitar/Desabilitar o touchpad do Dell XPS 13 9343.
#Podendo ser adicionado como atalho na tecla F7.
# Alterado por luiz cavalcanti em 10/03/16 pois tema original gnome do gsettings estava inválido
#

declare STATE
STATE=`gsettings get org.mate.peripherals-touchpad touchpad-enabled | tr \' X`
echo $STATE
if [ "$STATE" == 'true' ]
then
gsettings set org.mate.peripherals-touchpad touchpad-enabled false
echo "Touchpad disabled."
notify-send -t 1500 "Touchpad Disabled."
elif [ "$STATE" == 'false' ]
then
gsettings set org.mate.peripherals-touchpad touchpad-enabled true
echo "Touchpad enabled."
notify-send -t 1500 "Touchpad Enabled."
else
notify-send -t 1500 "Touchpad in other mode."
fi


Sim, claro, por conta do mate... Mas se funciona fico agradecido! #Vivaolinux


Contribuir com comentário