Відповіді:
Ви можете спробувати відключити пристрій введення за допомогою xinput
команди. Спочатку подивіться, які пристрої введення у вас є, просто введіть:
xinput
І вам слід побачити такий список, як:
$ 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)]
...
Тоді ви можете відключити потрібний пристрій введення за допомогою цієї команди:
xinput disable 9
Де 9 - ідентифікатор пристрою, який ви хочете відключити. Ви також можете використовувати назву пристрою між цитатами.
У xinput версії 1.5.99.1 вам потрібно зробити це xinput set-prop 9 'Device Enabled' 0
. Як не дивно на xinput v1.6.2 перший спосіб роботи.
~/.profile
автоматичного застосування після перезавантаження: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/"`
. Команда всередині Що робить задні повернення повертає ідентифікатор.
xinput
Рішення не працює для мене. Я замість цього дотримувався вказівок у цій темі . Це відключить його під час завантаження.
/usr/share/X11/xorg.conf.d/10-evdev.conf
Option "Ignore" "on"
до кінця розділу з touchscreen
ідентифікаторомELAN Touchscreen
у xinput
./usr/share/X11/xorg.conf.d/40-libinput.conf
. Я змінив подібний блок у цьому файлі, і при наступному перезавантаженні я думаю, я дізнаюся, як це пішло!
Відредагуйте файл за допомогою
sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf
Змініть MatchIsTouchscreen з "увімкнено" на "вимкнено" у розділі сенсорного екрану, щоб воно виглядало так:
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "off"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Збереження, ім'я та вихід
Сенсорний екран вимкнено і більше не виявляється у списку xinput.
Option = ignore
з відповіді, оскільки він не відключає пристрій, просто не сприймає його як сенсорний екран.
Як ідентифікатор змін xinput при перезавантаженні, я додав простий однорядковий екран при завантаженні сесії:
#!/bin/bash
xinput --list | awk '/Atmel Atmel maXTouch Digitizer/ {print $7}' | awk '{split($0,a,"="); print a[2]}' | xargs xinput disable
Назва мого пристрою - "Atmel Atmel maXTouch Digitizer", змініть це на своєму пристрої (використовуйте xinput --list
для назви пристрою).