Jak naprawić odrzucenie dłoni na Ubuntu 16.04 LTS?

14

Niedawno pobrałem Ubuntu na laptopa Dell Inspiron 7559 i zauważyłem, że działa odrzucenie dłoni. Oprogramowanie działa częściowo; kursor nie porusza się, gdy próbuję użyć panelu dotykowego z dłonią, więc wyraźnie rozpoznaje moją dłoń, ale kiedy kładę dłoń na tabliczce, niekoniecznie stukając, po prostu umieszczając ją, kliknięcie nastąpi automatycznie. Powoduje to, że okna znikają, więc muszę je polować, aby je odzyskać.

Jest to szczególnie dziwny problem, którego nie udało mi się znaleźć. Uruchamiam podwójnie system Windows i system Ubuntu i nie mam tego problemu podczas uruchamiania systemu Windows 10. Czy jest więc ustawienie, które mogę zmienić, lub sterownik, który mogę zaktualizować? Każda pomoc będzie mile widziana.

Edytować:

Sprawdziłem urządzenia za pomocą listy xinput i zauważyłem, że najwyraźniej mam 2 wejścia touchpada:

↳ ELAN1010: 00 04F3: 3012 Identyfikator touchpada = 12 [wskaźnik slave (2)]

↳ ETPS / 2 Elantech Touchpad id = 14 [wskaźnik slave (2)]

Czy system operacyjny nasłuchuje niewłaściwego sterownika? A jeśli tak, to w jaki sposób mogę użyć prawidłowego?

Nieregularny kwadrat
źródło

Odpowiedzi:

12

Najpierw chcesz znaleźć sterownik tabliczki dotykowej. Możesz to zrobić, wpisując pod terminalem:

xinput

Tam otrzymasz listę sterowników. Pod listą Wirtualny wskaźnik rdzenia poszukaj słowa kluczowego TouchPad. Zmienną będzie {id}, np. Moja to „SynPS / 2 Synaptics TouchPad”.

Następnie przejdź do Preferencji aplikacji startowych, wybierz „Dodaj”, możesz wpisać cokolwiek dla nazwy, użyłem „Wykrywania dłoni” i dla cmd, który chcesz umieścić:

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

Dodaj także inny, aby ustawić wymiary. Nazwij to „Palm Dimensions” (możesz zastąpić tę wartość, jak chcesz, możesz grać z tą wartością, aby uzyskać najlepsze wrażenia):

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

Teraz możesz ponownie uruchomić laptopa i powodzenia :)

PS Myślę, że poprawnym identyfikatorem touchpada jest ten, który zaczyna się od ETPS / 2. Jeśli nie, możesz po prostu wypróbować oba sposoby i mam nadzieję, że to zadziała.

Izzie Cao
źródło
1
Więc to zadziałało, mimo że OP ma touchpad Elantech? Pytam, bo mam gładzik CyPS / 2 Cypress i jestem sfrustrowany strasznym wykrywaniem dłoni w Ubuntu Gnome.
Dan
Działa idealnie dla mnie z touchpadem Elantech. Jedyną konieczną zmianą po mojej stronie jest to, że ustawiłem rozmiar dłoni na 7x7; z 3x3 odrzuca nawet pojedynczy palec.
tglas
2
Aby wyjaśnić sytuację @ Dan, możesz uruchomić xinput list-props {id}i zobaczyć dostępne właściwości. Mój touchpad Elantech rzeczywiście wymienia wiele właściwości Synaptics.
Gertlex,
3

Dla mojego XPS 13 2017 z Ubuntu 16.04 rozwiązaniem jest instalacja dconf-editori przejście do

org > gnome > desktop > peripherals > touchpad

i ustaw click-methodna fingerslub jeśli klucz disable-while-typingjest dostępny, po prostu ustaw go na true.


Innym rozwiązaniem jest dodanie nowych skrótów, przechodząc do Keyboard > Shortcuts > Custom Shortcuts. Moje skróty to

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

Więc kiedy chcesz włączyć dotknij, aby kliknąć, po prostu naciśnij Ctrl+ Shift+ Mi Ctrl+ Shift+, Naby ją wyłączyć.

kwakier
źródło
2

Jeśli masz nowoczesny laptop Dell, instrukcje te mogą pomóc. Są one bezpośrednio od Dell, Precision / XPS: Ubuntu General Touchpad / Mouse Issue Fix

Pierwsza część zrobiła dla mnie cuda. Oto skrypt, do którego sugerują dodanie sudo gedit /usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf. Nie polecam podążania za przyjętymi rozwiązaniami, ponieważ ta droga wydaje się stwarzać inne problemy.

# 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

Dla porównania kompatybilności mam Dell Inspiron 13 z serii 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 nie znajduje się na tej liście, ponieważ został wyłączony przez powyższy skrypt. Przed dodaniem tego skryptu sugeruję uruchomienie xinput --test <id>"(dla mnie 14). Jeśli otrzymasz wyjście na terminal, oznacza to, że twoje urządzenie działa (twoje urządzenie jest włączone).

Jon
źródło
Wydaje się działać dobrze. Nie miałem problemu z „podwójnym sterownikiem gładzika”, więc po prostu przeskoczyłem do następnej sekcji.
Raffi Khatchadourian
2

Dla mnie wszystkie powyższe rozwiązania nie działały. Jeśli więc ktoś znajduje się w podobnej sytuacji, może to pomóc zmniejszyć obszar aktywacji touchpada na krawędziach. Nie spowodowało to żadnych negatywnych skutków ubocznych, ponieważ rzadko zaczynasz od kliknięcia krawędzi, a po dotknięciu touchpada nadal możesz używać obszaru na krawędziach. Można to zrobić w następujący sposób:

Najpierw użyj tego ( xinput list-props "ETPS/2 Elantech Touchpad"|grep Edges), aby uzyskać wymiary krawędzi touchpada. Zwraca 4 wartości (lewy, prawy, górny, dolny) npSynaptics Edges (274): 100, 2408, 71, 1249

Po drugie, tych wartości można użyć w następujący sposób:

synclient AreaTopEdge=71
synclient AreaLeftEdge=100
synclient AreaRightEdge=2408
Xelaos
źródło
Pracował dla mnie jak urok na Ubuntu 18.04. Dziękuję Ci! W przypadku innych osób, takich jak ja, powyższe polecenia (z własnymi wartościami pozycji) muszą być uruchamiane podczas uruchamiania. Aby to zrobić, utwórz skrypt powłoki za pomocą powyższych poleceń i dodaj go do autostartu (za pomocą dowolnej metody, którą można znaleźć, jeśli google).
diadochos