Bagaimana cara memperbaiki penolakan palm pada Ubuntu 16.04 LTS?


14

Saya baru-baru ini mengunduh Ubuntu di laptop Dell Inspiron 7559 saya, dan saya perhatikan penolakan palm bertindak. Perangkat lunak ini berfungsi sebagian; kursor tidak bergerak ketika saya mencoba menggunakan track pad dengan telapak tangan saya, jadi ia dengan jelas mengenali telapak tangan saya, tetapi ketika saya meletakkan telapak tangan saya pada track pad, tidak perlu mengetuk, hanya dengan meletakkannya di sana, sebuah klik akan muncul secara otomatis. Ini menyebabkan jendela menghilang, jadi saya harus memburu mereka untuk mendapatkannya kembali.

Ini adalah masalah khusus yang aneh yang saya belum dapat menemukan orang lain memiliki. Saya dual boot Windows dan Ubuntu dan saya tidak punya masalah ini ketika saya boot Windows 10. Jadi, apakah ada pengaturan yang dapat saya ubah atau driver yang bisa saya perbarui? Bantuan apa pun akan dihargai.

Edit:

Saya memeriksa perangkat saya menggunakan daftar xinput, dan saya perhatikan saya ternyata memiliki 2 input touchpad:

↳ ELAN1010: 00 04F3: 3012 Touchpad id = 12 [pointer slave (2)]

↳ ETPS / 2 Elantech Touchpad id = 14 [pointer slave (2)]

Jadi apakah OS mendengarkan driver yang salah? Dan jika demikian, bagaimana saya membuatnya menggunakan yang benar?

Jawaban:


12

Pertama, Anda ingin menemukan driver touch pad Anda. Anda dapat melakukannya dengan mengetik di bawah terminal:

xinput

Di sana Anda akan menerima daftar driver. Di bawah daftar Virtual core pointer, cari kata kunci TouchPad. Variabel itu akan menjadi {id} misalnya milik saya adalah "SynPS / 2 Synaptics TouchPad".

Selanjutnya pergi ke Preferensi Aplikasi Startup, pilih "Tambah", Anda dapat meletakkan apa pun untuk nama, saya menggunakan "Palm Detection", dan untuk cmd yang ingin Anda masukkan:

xinput set-prop "{id}" "Synaptics Palm Detection" 1

Juga, tambahkan yang lain untuk mengatur dimensi. Sebut saja "Palm Dimensions" (Anda dapat mengganti nilai sesuai keinginan, Anda mungkin ingin bermain dengan nilai untuk mendapatkan pengalaman terbaik):

xinput set-prop "{id}" "Synaptics Palm Dimensions" 3, 3

Sekarang Anda dapat reboot laptop Anda dan semoga berhasil :)

PS Saya pikir id touch pad yang benar untuk digunakan adalah yang dimulai dengan ETPS / 2. Jika tidak, Anda bisa mencoba keduanya dan mudah-mudahan itu akan berhasil.


1
Jadi ini berhasil meskipun OP memiliki touchpad Elantech? Saya bertanya karena saya memiliki CyPS / 2 Cypress Trackpad dan saya frustrasi dengan deteksi telapak tangan yang mengerikan di Ubuntu Gnome.
Dan

Berfungsi sempurna untuk saya dengan touchpad Elantech. Hanya perubahan yang diperlukan di pihak saya adalah saya mengatur ukuran telapak tangan menjadi 7x7; dengan 3x3 bahkan menolak satu jari.
tglas

2
Untuk mencerahkan situasi @ Dan, Anda dapat menjalankan xinput list-props {id}dan melihat properti yang tersedia. Panel sentuh Elantech saya memang mencantumkan banyak properti Synaptics.
Gertlex

3

Untuk XPS 13 2017 saya dengan Ubuntu 16.04 solusinya adalah menginstal dconf-editordan pergi ke

org > gnome > desktop > peripherals > touchpad

dan atur click-methodke fingersatau jika kunci disable-while-typingtersedia, cukup atur ke true.


Solusi lain adalah menambahkan pintasan baru dengan masuk ke Keyboard > Shortcuts > Custom Shortcuts. Pintasan saya adalah

Ctrl + Shift + M -> gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click true

Ctrl + Shift + N -> gsettings set org.gnome.desktop.peripherals.touchpad tap-to-click false

Jadi kapan pun Anda ingin mengaktifkan ketuk untuk mengklik, cukup tekan Ctrl+ Shift+ Mdan Ctrl+ Shift+ Nuntuk menonaktifkannya.


2

Jika Anda memiliki laptop Dell modern, instruksi ini dapat membantu. Mereka langsung dari Dell, Precision / XPS: Ubuntu General Touchpad / Mouse Issue Fix

Bagian pertama melakukan keajaiban bagi saya. Berikut ini skrip yang mereka sarankan untuk ditambahkan sudo gedit /usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf. Saya tidak merekomendasikan mengikuti solusi jawaban yang diterima karena rute itu tampaknya menciptakan masalah lain.

# Disable generic Synaptics device, as we're using
# "DLL0704:01 06CB:76AE Touchpad"
# Having multiple touchpad devices running confuses syndaemon
Section "InputClass"
    Identifier "SynPS/2 Synaptics TouchPad"
    MatchProduct "SynPS/2 Synaptics TouchPad"
    MatchIsTouchpad "on"
    MatchOS "Linux"
    MatchDevicePath "/dev/input/event*"
    Option "Ignore" "on"
EndSection

Untuk perbandingan kompatibilitas, saya memiliki seri Dell Inspiron 13 7000 xinput list

jonathan@Dell:~$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                     id=10   [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                     id=11   [slave  pointer  (2)]
⎜   ↳ ELAN Touchscreen                          id=13   [slave  pointer  (2)]
⎜   ↳ DELL0741:00 06CB:7E7E Touchpad            id=14   [slave  pointer  (2)]
...

Synaptics tidak ada dalam daftar itu karena telah dinonaktifkan oleh skrip di atas. Sebelum menambahkan skrip ini, saya sarankan menjalankan xinput --test <id>"(untuk saya 14). Jika Anda mendapatkan output pada terminal, itu berarti perangkat Anda berfungsi (perangkat Anda "aktif").


Tampaknya bekerja dengan baik. Saya tidak memiliki masalah "driver trackpad ganda", jadi saya langsung melewatkan bagian berikutnya.
Raffi Khatchadourian

2

Bagi saya, semua solusi di atas tidak berhasil. Jadi, jika seseorang berada dalam situasi yang serupa, ini dapat membantu mengurangi area aktivasi touchpad Anda di bagian tepinya. Ini belum menciptakan efek samping negatif karena Anda jarang memulai dengan mengklik di bagian tepi dan ketika touchpad disentuh, Anda masih dapat menggunakan area di bagian tepi. Itu bisa dilakukan seperti ini:

Pertama, gunakan ini ( xinput list-props "ETPS/2 Elantech Touchpad"|grep Edges) untuk mendapatkan dimensi tepi touchpad Anda. Ini mengembalikan 4 nilai (kiri, kanan, atas, bawah) misalnyaSynaptics Edges (274): 100, 2408, 71, 1249

Kedua, nilai-nilai ini dapat digunakan seperti ini:

synclient AreaTopEdge=71
synclient AreaLeftEdge=100
synclient AreaRightEdge=2408

Bekerja untuk saya seperti pesona di Ubuntu 18.04. Terima kasih! Untuk orang lain seperti saya, perintah di atas (dengan nilai posisi Anda sendiri) perlu dijalankan saat startup. Untuk melakukan itu, buat skrip shell dengan perintah di atas dan tambahkan ke autostart (menggunakan metode apa pun yang dapat ditemukan jika Anda google).
diadochos
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.