Câu trả lời:
Bạn có thể thử vô hiệu hóa thiết bị đầu vào bằng xinput
lệnh. Trước tiên hãy xem bạn có thiết bị đầu vào nào, chỉ cần gõ:
xinput
Và bạn sẽ thấy một danh sách như:
$ 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)]
...
Sau đó, bạn có thể vô hiệu hóa thiết bị đầu vào mà bạn muốn bằng lệnh này:
xinput disable 9
Trong đó 9 là id của thiết bị bạn muốn tắt. Bạn cũng có thể sử dụng tên thiết bị giữa các dấu ngoặc kép.
Trong phiên bản xinput 1.5.99.1, bạn cần phải làm xinput set-prop 9 'Device Enabled' 0
thay thế. Điều lạ lùng là xinput v1.6.2 cách đầu tiên hoạt động.
~/.profile
tự động áp dụng sau khi khởi động lại: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/"`
. Lệnh bên trong What backticks trả về id.
Các xinput
giải pháp đã không làm việc cho tôi. Tôi thay vì làm theo các hướng dẫn trong chủ đề này . Điều này sẽ vô hiệu hóa nó tại thời điểm khởi động.
/usr/share/X11/xorg.conf.d/10-evdev.conf
Option "Ignore" "on"
vào cuối phần với mã touchscreen
định danhELAN Touchscreen
trong xinput
./usr/share/X11/xorg.conf.d/40-libinput.conf
. Tôi đã thay đổi một khối tương tự trong tập tin này và ở lần khởi động lại tiếp theo, tôi đoán tôi sẽ tìm hiểu xem nó đã diễn ra như thế nào!
Chỉnh sửa tập tin với
sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf
Thay đổi MatchIsTouchscreen từ "bật" thành "tắt" trong phần Màn hình cảm ứng để nó trông như thế này:
Section "InputClass"
Identifier "evdev touchscreen catchall"
MatchIsTouchscreen "off"
MatchDevicePath "/dev/input/event*"
Driver "evdev"
EndSection
Lưu, Đặt tên và Thoát
Màn hình cảm ứng bị vô hiệu hóa và không còn được phát hiện trong danh sách xinput.
Option = ignore
từ câu trả lời, vì nó không vô hiệu hóa thiết bị chỉ không không coi nó là màn hình cảm ứng.
Vì id cho thay đổi xinput khi khởi động lại, tôi đã thêm một màn hình một dòng đơn giản khi tải phiên:
#!/bin/bash
xinput --list | awk '/Atmel Atmel maXTouch Digitizer/ {print $7}' | awk '{split($0,a,"="); print a[2]}' | xargs xinput disable
Tên thiết bị của tôi là "Atmel Atmel maXTouch Digit", thay đổi tên đó với thiết bị của bạn (sử dụng xinput --list
cho tên thiết bị).