Отключить средний щелчок на сенсорной панели Elan и xinput на Ubuntu 17.10

Очень доволен GNOME (на X, no wayland) и Ubuntu 17.10, за исключением среднего клика, настроенного по умолчанию на моем сенсорном планшете. Я ударил его по ошибке все время и средний щелчок, кажется, сопоставлен, чтобы «сделать некоторые сумасшедшие вещи» в каждом приложении. Мне действительно нужно отключить его.

Я нахожусь в Lenovo Yoga 2017 с сенсорным планшетом Elan. Я использую libinput и не имею установленный драйвер synaptics. Все решения, которые я нашел, касались синаптики. Я пробовал идти по этому маршруту, но сделал тачпад намного хуже, поэтому я бы хотел этого избежать.

2
задан 24 October 2017 в 23:43

4 ответа

Конечно, я понял это сразу после публикации :) Ввод ответа здесь на всякий случай, если кто-то еще увидит это

Найдите свой идентификатор тачпада:

adam@adam720:~$ xinput list | grep -i elan ⎜ ↳ ELAN0651:00 04F3:3052 Touchpad id=14 [slave pointer (2)]

Найдите идентификатор свойства среднего щелчка:

adam@adam720:~$ xinput --list-props 14 | grep -i middle libinput Middle Emulation Enabled (320): 1 libinput Middle Emulation Enabled Default (321): 0

Переключить свойство среднего щелчка. В моем случае он был установлен в 0, поэтому я установил его в 1:

adam@adam720:~$ xinput --set-prop 14 320 1

. В примере выше 14 указан идентификатор тачпада и 320 - идентификатор свойства.

Теперь это сработало, но оно также вызывает некоторые вопросы, на которые я не могу ответить.

Почему для параметра «По умолчанию» установлено значение «0» по умолчанию, и почему 1 отключил его? Что такое «Средний щелчок по умолчанию по умолчанию» и почему он выдает ошибку, если вы попытаетесь установить его?

ИЗМЕНИТЬ! Я хотел сделать это упорным в перезагрузках, но у меня возникла проблема. Идентификатор устройства и идентификаторы поддержки меняются при загрузке. Итак, я написал сценарий, который ищет идентификаторы устройства и опоры, а затем соответствующим образом устанавливает опору средней кнопки. Я сомневаюсь, что кто-то еще когда-нибудь понадобится, но на всякий случай я поставил скрипт на github

1
ответ дан 18 July 2018 в 04:38

В дополнение к решению Адама следующая одиночная строка идентифицирует идентификатор TouchPad (при условии, что это Synaptics TouchPad), а также отключает средний щелчок (путем установки его в 1):

xinput set-prop `xinput list | grep 'Synaptics TouchPad' | grep -oP '(?<=id=)[0-9]+'` "libinput Middle Emulation Enabled" 1

Наслаждайтесь!

0
ответ дан 18 July 2018 в 04:38

Конечно, я понял это сразу после публикации :) Ввод ответа здесь на всякий случай, если кто-то еще увидит это

Найдите свой идентификатор тачпада:

adam@adam720:~$ xinput list | grep -i elan ⎜ ↳ ELAN0651:00 04F3:3052 Touchpad id=14 [slave pointer (2)]

Найдите идентификатор свойства среднего щелчка:

adam@adam720:~$ xinput --list-props 14 | grep -i middle libinput Middle Emulation Enabled (320): 1 libinput Middle Emulation Enabled Default (321): 0

Переключить свойство среднего щелчка. В моем случае он был установлен в 0, поэтому я установил его в 1:

adam@adam720:~$ xinput --set-prop 14 320 1

. В примере выше 14 указан идентификатор тачпада и 320 - идентификатор свойства.

Теперь это сработало, но оно также вызывает некоторые вопросы, на которые я не могу ответить.

Почему для параметра «По умолчанию» установлено значение «0» по умолчанию, и почему 1 отключил его? Что такое «Средний щелчок по умолчанию по умолчанию» и почему он выдает ошибку, если вы попытаетесь установить его?

ИЗМЕНИТЬ! Я хотел сделать это упорным в перезагрузках, но у меня возникла проблема. Идентификатор устройства и идентификаторы поддержки меняются при загрузке. Итак, я написал сценарий, который ищет идентификаторы устройства и опоры, а затем соответствующим образом устанавливает опору средней кнопки. Я сомневаюсь, что кто-то еще когда-нибудь понадобится, но на всякий случай я поставил скрипт на github

1
ответ дан 24 July 2018 в 18:08

В дополнение к решению Адама следующая одиночная строка идентифицирует идентификатор TouchPad (при условии, что это Synaptics TouchPad), а также отключает средний щелчок (путем установки его в 1):

xinput set-prop `xinput list | grep 'Synaptics TouchPad' | grep -oP '(?<=id=)[0-9]+'` "libinput Middle Emulation Enabled" 1

Наслаждайтесь!

0
ответ дан 24 July 2018 в 18:08

Другие вопросы по тегам:

Похожие вопросы: