Odpowiedzi:
Możesz spróbować wyłączyć urządzenie wejściowe za pomocą xinput
polecenia. Najpierw sprawdź, jakie masz urządzenia wejściowe, po prostu wpisz:
xinput
Powinieneś zobaczyć listę jak:
$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Atmel Atmel maXTouch Digitizer id=9 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=13 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
...
Następnie możesz wyłączyć żądane urządzenie wejściowe za pomocą tego polecenia:
xinput disable 9
Gdzie 9 to identyfikator urządzenia, które chcesz wyłączyć. Możesz także użyć nazwy urządzenia między cudzysłowami.
W wersji xinput 1.5.99.1 musisz to zrobić xinput set-prop 9 'Device Enabled' 0
. Dziwnie na Xinput v1.6.2 pierwszy sposób działa.
~/.profile
do automatycznego stosowania po xinput | grep 'ELAN Touchscreen' | grep -Po 'id=\d+' | cut -d= -f2 | xargs xinput disable
xinput enable `xinput | grep Atmel | sed "s/^.*id=\([0-9]*\).*$/\1/"`
. Komenda wewnątrz Co powoduje, że backticks zwraca identyfikator.
xinput
Rozwiązanie nie działa dla mnie. Zamiast tego postępowałem zgodnie z instrukcjami w tym wątku . Spowoduje to wyłączenie podczas uruchamiania.
/usr/share/X11/xorg.conf.d/10-evdev.conf
Option "Ignore" "on"
na końcu sekcji z touchscreen
identyfikatoremELAN Touchscreen
w xinput
./usr/share/X11/xorg.conf.d/40-libinput.conf
. Zmieniłem podobny blok w tym pliku i przy następnym ponownym uruchomieniu chyba się dowiem, jak poszło!
Edytuj plik za pomocą
sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf
Zmień MatchIsTouchscreen z „on” na „off” w sekcji Touchscreen, aby wyglądał tak:
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "off"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Zapisz, nazwij i wyjdź
Ekran dotykowy jest wyłączony i nie jest już wykrywany na liście xinput.
Option = ignore
z odpowiedzi, ponieważ nie wyłącza urządzenia, po prostu nie traktuje go jako ekranu dotykowego.
Jako identyfikator zmian xinput przy ponownym uruchomieniu, dodałem prosty ekran jednowierszowy podczas ładowania sesji:
#!/bin/bash
xinput --list | awk '/Atmel Atmel maXTouch Digitizer/ {print $7}' | awk '{split($0,a,"="); print a[2]}' | xargs xinput disable
Nazwa mojego urządzenia to „Atmel Atmel maXTouch Digitizer”, zmień to w swoim urządzeniu (użyj xinput --list
nazwy urządzenia).