Wie deaktiviere ich das Touchpad bei Verwendung einer Maus?

41

Ich kann mein Touchpad deaktivieren, aber wenn ich nicht an meiner Bluetooth-Maus bin oder meinen WLAN-Dongle für meine Ersatzmaus vergesse, bin ich SOL. Linux Mint hatte eine nette Einstellung, mit der das Touchpad bei Verwendung einer Maus deaktiviert werden konnte. Ich bin jetzt auf Ubuntu MATE 16.04 und habe diese Einstellung nicht. Wie kann ich diese Funktionalität bekommen? Das Ausschalten des Touchpads während der Eingabe reicht nicht aus, um leichte Berührungen der Handfläche mit der FU zu verhindern, an der ich gerade arbeite.

Ich habe andere ähnliche Fragen hier gelesen und konnte keine Antwort für genau dieses Problem finden.


quelle

Antworten:

64

Sie sollten in der Lage sein, das Touchpad mit dem folgenden Befehl zu deaktivieren, wenn eine externe Maus angeschlossen ist:

gsettings set org.gnome.desktop.peripherals.touchpad send-events disabled-on-external-mouse

So ermitteln Sie die aktuelle Situation:

gsettings get org.gnome.desktop.peripherals.touchpad send-events

Optionen sind:

enabled
disabled
disabled-on-external-mouse
Jacob Vlijm
quelle
4
Der obige Befehl zum Deaktivieren funktionierte nicht. Es wird jetzt "Deaktiviert bei externer Maus" angezeigt, aber das Touchpad funktioniert weiterhin, wenn entweder meine Bluetooth-Maus oder eine drahtlose Maus angeschlossen ist.
10
Funktioniert bei mir unter Ubuntu 16.10. Ich bedaure nur, dass ich nur eine positive Bewertung abgeben muss.
Jeremiah Peschka
1
Es fehlt mir an Mäusen, die getestet werden können, aber anscheinend funktioniert die deaktivierte externe Maus für drahtgebundene Mäuse, aber nicht für drahtlose Mäuse.
Brent
2
Ich kann bestätigen, dass dies für mich unter Ubuntu 16.04 mit Bluetooth-Maus funktioniert. Sobald meine Maus angeschlossen ist, wird das Touchpad deaktiviert. Das ist einfach wunderschön! :)
Muhammad bin Yusrat
2
Arbeitete nicht auf meinem Ubuntu 16.04
Paul Praet
4

Es gibt auch ein Programm, das eine GUI zum Bearbeiten einiger solcher Einstellungen einführt.

sudo add-apt-repository ppa:atareao/atareao
sudo apt update
sudo apt install touchpad-indicator

Weitere Informationen finden Sie unter https://itsfoss.com/disable-touchpad-when-mouse-used/.

Angelorf
quelle
Die anderen Lösungen schienen lang zu sein oder funktionierten nicht ... Installierte Touchpad-Anzeige startete, stellte die Einstellung ein, funktionierte.
Fabian N.
Ich mag auch die Option, das Touchpad beim Tippen zu deaktivieren!
Nash
Vielen Dank dafür, endlich! Ich dachte, ich würde durchdrehen, all diese Dialoge "auf mysteriöse Weise" schlossen sich, der Cursor sprang durch den Doc, ich schlug meinen Kopf (und meinen Laptop) ständig frustriert! Mein Touchpad, die Tasten und die Track-Maus - allesamt deaktiviert, und sie scheinen sie zuverlässig zu aktivieren, wenn die externe Maus nicht angeschlossen ist. + mit der Statusmeldung in der oberen Leiste - ich weiß immer, wo ich stehe.
Moshe Eshel
2

Wenn Sie Angst vor dem Terminal haben, können Sie das dconf-editorfolgende Image verwenden : dconf-enable-touchpad-image

Zeromatiker
quelle
Es tut mir leid, aber dein Screenshot zeigt Gnome, während sich die Frage um MATE dreht. Vielleicht kannst du den Screenshot aktualisieren?
Robert Riedl
@RobertRiedl, Sie haben Recht (obwohl es Budgie zeigt), haben das nicht gesehen. Aber bis auf das Theme funktioniert es genauso (und sogar das Theme könnte mit Mate verwendet werden).
Zeromatiker
1

Auf Kubuntu 16.04 können Sie einfach zu Systemeinstellungen -> Eingabegeräte -> Touchpad -> Touchpad aktivieren / deaktivieren gehen

Wählen Sie jetzt Deaktivieren, wenn die Maus eingesteckt ist.

user1751017
quelle
Wenn ich das Touchpad deaktiviere, die Einstellungen verlasse und später zurückkomme, gibt es keine Möglichkeit, das Touchpad wieder einzuschalten!
Brian Borchers
Die Unity-Version der Einstellungen bietet die Möglichkeit, das Touchpad wieder einzuschalten, während die Gnome-Version der Einstellungen es mir nicht ermöglicht, das Touchpad wieder einzuschalten. Ich konnte das Touchpad in Unity wieder einschalten.
Brian Borchers
0

Mir ist klar, dass ich ein bisschen zu spät zur Party komme (und auch, dass meine Antwort nicht Ubuntu-Mate-spezifisch ist), aber hier geht es weiter ...

Ich habe sehr ähnliche Anforderungen wie Sie, aber ich starte xfce unter debian 9 (stretch), so dass ich keine gnome / gsettings installiert habe. Um das Synaptics-Touchpad zu deaktivieren / erneut zu aktivieren, wenn ich eine USB-Maus ein- / ausstecke, verwende ich udev-Regeln, um ein (Posix-) Shell-Skript auszulösen, das den Synaptics-Touchpad-Treiber aufhebt / erneut bindet:

  1. Erstellen Sie als root /usr/local/sbin/touchpadctl.sh mit folgendem Inhalt:

    #!/bin/sh
    set -o errexit #(equivalent -e)
    set -o nounset #(equivalent -u)
    
    usage(){
      echo "Usage: ${0} {-enable|-e|-disable|-d}"
    }
    
    if [ $# -ne 1 ]; then
      usage
      exit 1
    fi
    
    base_dir=/sys/bus/serio/drivers/psmouse
    device_id=serio1
    
    if [ ${1} = "-disable" -o ${1} = "-d" ]; then
      logger "${0} is disabling the touchpad"
      echo -n manual > $base_dir/bind_mode
      echo -n $device_id > $base_dir/unbind 2>/dev/null || true
    elif [ ${1} = "-enable" -o ${1} = "-e" ]; then
      logger "${0} is enabling the touchpad"
      echo -n auto > $base_dir/bind_mode
    else
      usage
      exit 1
    fi
    
  2. Machen Sie Ihr Touchpad-Kontrollskript ausführbar:

    sudo chmod +x /usr/local/sbin/touchpadctl.sh
    
  3. Testen Sie jetzt Ihr Skript. So deaktivieren Sie das Touchpad:

    sudo /usr/local/sbin/touchpadctl.sh -d
    

    und um das Touchpad zu aktivieren:

    sudo /usr/local/sbin/touchpadctl.sh -e
    

Da dies "Treiber-Unbinding" verwendet, gibt es keinerlei Abhängigkeit von X / xorg / wayland / gnome. Daher können Sie es in udev-Regeln verwenden, die während des Startvorgangs ordnungsgemäß funktionieren:

  1. Erstellen Sie als Root /etc/udev/rules.d/01-touchpad.rules mit den folgenden Inhalten:

    KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="add", \
      RUN+="/usr/local/sbin/touchpadctl.sh -disable"
    KERNEL=="mouse*", ATTRS{phys}=="usb*", ACTION=="remove", \
      RUN+="/usr/local/sbin/touchpadctl.sh -enable"
    

Wie bei allen Linux-Anwendungen kann Ihr Kilometerstand variieren - Sie müssen ihn möglicherweise "optimieren", aber ich habe mein Bestes gegeben, um ihn verständlicher zu machen. Weitere Informationen zum Binden / Entbinden von Treibern finden Sie im Artikel von Greg Kroah-Hartman aus dem Jahr 2005 in den Linux Weekly News. Außerdem enthält der Kernel-Quellcode einige nützliche Informationen . Weitere Informationen zum Schreiben von udev-Regeln finden Sie in Daniel Drakes ausgezeichnetem Tutorial .

jaimet
quelle