Как исправить отклонение ладони на Ubuntu 16.04 LTS?


14

Я недавно загрузил Ubuntu на свой ноутбук Dell Inspiron 7559, и я заметил, что отказ от ладони проявился. Программное обеспечение работает частично; курсор не перемещается, когда я пытаюсь использовать трекпад с моей ладонью, поэтому он четко распознает мою ладонь, но когда я кладу свою ладонь на трекпад, не обязательно нажимая, просто помещая ее туда, автоматически произойдет щелчок. Это приводит к исчезновению окон, поэтому я должен охотиться за ними, чтобы вернуть их.

Это особенно странная проблема, которую я не смог найти ни у кого другого. У меня двойная загрузка Windows и Ubuntu, и у меня нет этой проблемы при загрузке Windows 10. Так есть ли параметр, который я могу изменить, или драйвер, который я могу обновить? Любая помощь будет оценена.

Редактировать:

Я проверил свои устройства, используя список xinput, и заметил, что у меня, видимо, было 2 сенсорных входа:

↳ ELAN1010: 00 04F3: 3012 id сенсорной панели = 12 [подчиненный указатель (2)]

↳ ETPS / 2 Elantech Touchpad id = 14 [подчиненный указатель (2)]

Так ОС слушает не тот драйвер? И если да, то как мне заставить его использовать правильный?

Ответы:


12

Во-первых, вы хотите найти драйвер сенсорной панели. Вы можете сделать это, набрав в терминале:

xinput

Там вы получите список водителей. В списке Указатель виртуального ядра найдите ключевое слово TouchPad. Эта переменная будет {id}, например, моя - «SynPS / 2 Synaptics TouchPad».

Далее перейдите в «Настройки запуска приложений», выберите «Добавить», вы можете указать любое имя, я использовал «Palm Detection», а для cmd вы хотите указать:

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

Кроме того, добавьте еще один, чтобы установить размеры. Назовите это «Palm Dimensions» (вы можете заменить значение по своему желанию, вы можете поиграть со значением, чтобы получить наилучший опыт):

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

Теперь вы можете перезагрузить свой ноутбук и удачи :)

PS Я думаю, что правильным идентификатором сенсорной панели является тот, который начинается с ETPS / 2. Если нет, вы можете попробовать оба варианта и, надеюсь, это сработает.


1
Так что это сработало, несмотря на то, что у ОП есть сенсорная панель Elantech? Я спрашиваю, потому что у меня есть Cypress / 2 Cypress Trackpad и я разочарован ужасным обнаружением пальм в Ubuntu Gnome.
Дан

Прекрасно работает для меня с сенсорной панелью Elantech. Единственное изменение, которое требуется на моей стороне, это то, что я установил размер ладони на 7х7; с 3х3 это отвергает даже один палец.
Tglas

2
Чтобы лучше xinput list-props {id}понять ситуацию @ Dan, вы можете запустить и просмотреть доступные свойства. Моя сенсорная панель Elantech действительно содержит множество свойств Synaptics.
Гертлекс

3

Для моего XPS 13 2017 с Ubuntu 16.04 решение состоит в том, чтобы установить dconf-editorи перейти к

org > gnome > desktop > peripherals > touchpad

и установить click-methodв fingersили если ключ disable-while-typingдоступен, просто установите его true.


Другое решение - добавить новые ярлыки, перейдя в Keyboard > Shortcuts > Custom Shortcuts. Мои ярлыки

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

Поэтому, когда вы хотите включить нажатие, нажмите Ctrl+ Shift+ Mи Ctrl+ Shift+, Nчтобы отключить его.


2

Если у вас современный ноутбук Dell, эти инструкции могут помочь. Они напрямую от Dell, Precision / XPS: исправлена ​​проблема с Ubuntu General Touchpad / Mouse

Первая порция сделала чудеса для меня. Вот сценарий, который они предлагают добавить sudo gedit /usr/share/X11/xorg.conf.d/51-synaptics-quirks.conf. Я не рекомендую следовать принятым решениям ответа, поскольку этот маршрут создает другие проблемы.

# 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

Для сравнения совместимости у меня есть 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 отсутствует в этом списке, потому что он был отключен вышеуказанным сценарием. Перед добавлением этого скрипта предлагаю запустить xinput --test <id>"(для меня 14). Если вы получаете вывод на терминал, это означает, что ваше устройство работает (ваше устройство включено).


Кажется, работает хорошо. У меня не было проблемы с «двойным драйвером трекпада», поэтому я просто перешел к следующему разделу.
Раффи Хачадурян

2

Для меня все решения выше не сработали. Поэтому, если кто-то находится в подобной ситуации, это может помочь уменьшить область активации сенсорной панели по краям. Это не создало никаких негативных побочных эффектов, поскольку вы редко начинаете с щелчка по краям, а при касании сенсорной панели вы все равно можете использовать область по краям. Это можно сделать так:

Сначала используйте this ( xinput list-props "ETPS/2 Elantech Touchpad"|grep Edges), чтобы получить размеры краев сенсорной панели. Возвращает 4 значения (влево, вправо, сверху вниз), напримерSynaptics Edges (274): 100, 2408, 71, 1249

Во-вторых, эти значения можно использовать так:

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

Работал на меня как шарм на Ubuntu 18.04. Спасибо! Для других людей, таких как я, вышеуказанные команды (с вашими собственными значениями позиции) должны запускаться при запуске. Для этого создайте сценарий оболочки с вышеуказанными командами и добавьте его в автозапуск (используя любой метод, который можно найти, если вы используете Google).
diadochos
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.