Bagaimana cara menonaktifkan driver layar sentuh?

41

Saya memiliki layar sentuh, tetapi driver tidak berfungsi dengan benar dan mengganggu mouse saya.

Apakah mungkin untuk menonaktifkan layar sentuh saya, sehingga saya dapat bekerja kembali dengan benar?

mnr
sumber

Jawaban:

52

Anda dapat mencoba menonaktifkan perangkat input dengan xinputperintah. Pertama lihat perangkat input apa yang Anda miliki, cukup ketik:

xinput

Dan Anda akan melihat daftar seperti:

$ 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)]
...

Kemudian Anda dapat menonaktifkan perangkat input yang Anda inginkan dengan perintah ini:

xinput disable 9

Di mana 9 adalah id perangkat yang ingin Anda nonaktifkan. Anda juga dapat menggunakan nama perangkat di antara kutipan.

Di xinput versi 1.5.99.1, Anda harus melakukannya xinput set-prop 9 'Device Enabled' 0. Anehnya pada xinput v1.6.2 cara kerja pertama.

romaia
sumber
1
Ini berfungsi pada lenovo yoga (2012) saya yang menjalankan ubuntu 14.04.
Jeremy Upsal
7
Bekerja pada Dell XPS 13 yang menjalankan Ubuntu 16.04. Saya juga menambahkan ini ke ~/.profileberlaku otomatis setelah reboot:xinput | grep 'ELAN Touchscreen' | grep -Po 'id=\d+' | cut -d= -f2 | xargs xinput disable
TalkLittle
Atmel juga tampaknya cukup umum, cara alternatif sebagai @TalkLittle: xinput enable `xinput | grep Atmel | sed "s/^.*id=\([0-9]*\).*$/\1/"`. Perintah di dalam Apa backticks mengembalikan id.
Pablo A
Terima kasih. bekerja pada dell inspiron 13 7000 series menjalankan Ubuntu 16.10
durga
Ini adalah opsi gt on reat. Saya lebih suka cara mengaktifkan i
midopa
27

The xinputsolusi tidak bekerja untuk saya. Saya malah mengikuti instruksi di utas ini . Ini akan menonaktifkannya saat boot.

  1. Edit /usr/share/X11/xorg.conf.d/10-evdev.conf
  2. Tambahkan Option "Ignore" "on"ke bagian akhir dengan touchscreenpengenal
  3. Mulai ulang

masukkan deskripsi gambar di sini

  • Sebagai catatan (Google), saya memiliki Samsung Series 7 dan layar sentuh saya terdaftar sebagai ELAN Touchscreendi xinput.
  • JFTR juga, dalam pertanyaan ini mengatakan perbedaan konsumsi daya sebagian besar diabaikan.
segera
sumber
Terima kasih, ini berfungsi pada XPS 13 9343 saya (2015), layar sentuh terdaftar sebagai evdev touchscreen.
hg8
2
Saya melakukan itu pada Dell XPS dan menonaktifkan layar sepenuhnya. Setelah boot layar hanya hitam. Boot dalam mode pemulihan, menghapus garis dan semuanya kembali normal.
pieroxy
1
Ini mencegah laptop saya untuk reboot ke X windows. Bukan masalah besar untuk menghapus pengaturan itu, tetapi sesuatu yang pemula ingin periksa dapat mereka lakukan sebelum mencobanya.
Davide
2
Juga menonaktifkan touchpad di Sony Vaio saya. Mengatur nilai driver ke "libinput" berhasil meskipun
Jason Pawlak
2
Di Ubuntu 17.10, saya tidak dapat menemukan file yang Anda daftarkan tetapi ada /usr/share/X11/xorg.conf.d/40-libinput.conf. Saya mengubah blok serupa di file ini dan pada restart berikutnya saya kira saya akan mencari tahu bagaimana hasilnya!
Oliv Utilo
4

Edit file file dengan

sudo nano /usr/share/X11/xorg.conf.d/10-evdev.conf

Ubah MatchIsTouchscreen dari "on" menjadi "off" di bagian Touchscreen sehingga terlihat seperti ini:

Section "InputClass"
    Identifier "evdev touchscreen catchall"
    MatchIsTouchscreen "off"
    MatchDevicePath "/dev/input/event*"
    Driver "evdev"
    EndSection

Simpan, Nama, dan Keluar

Layar sentuh dinonaktifkan dan tidak lagi terdeteksi dalam daftar xinput.

Shawn Moore
sumber
Ini berfungsi pada Lenovo ideacentre Flex 20 saya, yang memiliki layar retak.
Merlin04
Ini bekerja untuk Dell XPS 15 dan Linux Mint 18. Saya pikir ini lebih aman daripada menggunakan Option = ignoredari jawabannya, karena tidak menonaktifkan perangkat hanya tidak memperlakukannya sebagai layar sentuh.
matt wilkie
Ini tidak berfungsi lagi. Saya memperbarui ke Ubuntu 18.04, dan file 10-evdev.conf hilang. Saya mencoba membuatnya kembali, tetapi tidak berhasil.
Merlin04
@ Merlin04 Apakah Anda memeriksa file libinput? Ada jawaban yang menyebutkan ini: askubuntu.com/a/1038259/167115
mchid
0

Jika layar sentuh Anda adalah layar panel sentuh seperti monitor USB, Anda dapat menambahkan driver kernel default usbtouchscreenke dalam file daftar hitam modprobe ( /etc/modprobe.d/blacklist.conf) dan menggunakan driver khusus Anda seperti touchkitatau evtouch.

Soner
sumber
0

Karena id untuk xinput berubah saat reboot, saya menambahkan layar satu baris sederhana pada sesi beban:

#!/bin/bash
xinput --list | awk '/Atmel Atmel maXTouch Digitizer/ {print $7}' | awk '{split($0,a,"="); print a[2]}' | xargs xinput disable

Nama perangkat saya adalah "Atmel Atmel maXTouch Digitizer", ubah dengan perangkat Anda (gunakan xinput --listuntuk nama perangkat).

Emin Mastizada
sumber