Правильне виявлення великого пальця та долоні тачпада з лібінпутом


23

Таким чином, libinput наближається до свого першого стабільного випуску з кандидатом на випуск

Що додає належної підтримки для виявлення великого пальця / долоні на сенсорних колодках, а також підтримки пальцем і щіпками підтримують щось, що дорого пропущено в Linux для багатофункціональних ноутбуків.

Хто-небудь може надати гарну інструкцію щодо її встановлення на Ubuntu 15.04

Як я вважаю, ми не будемо певний час його бачити за замовчуванням в установці Ubuntu.


Не так багато уваги до цього питання. Чесно кажучи не знаю чому.
VRR

Виявлення долоні залежить від драйвера тачпада ядра і може бути налаштовано також у xorg-synaptics. Який тачпад у вас є?
Пілот6

@ Pilot6 пакет доступний для завантаження, але файл readme не дає конкретних інструкцій щодо компіляції до ядра.
RCF

@ RCF-U15.04 libinput- програма для користувацького простору. Це не має нічого спільного з ядром. Він просто використовує події, про які повідомляє ядро.
Пілот6

@tomodachi Якщо ви хочете добре налаштувати розпізнавання долонь в Ubuntu, можете задати ще одне питання, і я допоможу вам.
Пілот6

Відповіді:


14

Ось як встановити libinput в Ubuntu.

  1. Встановіть деякі необхідні пакети

    sudo apt-get install git build-essential autoconf automake pkg-config libtool
    sudo apt-get install libmtdev1 libmtdev-dev libudev-dev libevdev-dev xutils-dev libwacom-dev
    
  2. Встановити xserver-xorg-dev. Для 14.04.3 це може бути xserver-xorg-dev-lts-vivid. Будь обережний. Вам потрібно перевірити, який xserver-xorgпакет встановлений.

    sudo apt-get install xserver-xorg-dev
    
  3. Клон libinputі xf86-input-libinput.

    git clone git://anongit.freedesktop.org/git/wayland/libinput
    git clone git://anongit.freedesktop.org/xorg/driver/xf86-input-libinput
    
  4. Побудувати та встановити.

    cd libinput
    ./autogen.sh --prefix=/usr
    make && sudo make install
    
    cd ../xf86-input-libinput
    ./autogen.sh --prefix=/usr
    make && sudo make install
    
  5. Додайте до файлу conf/90-libinput.confрядок Option "Tapping" "True"до EndSectionрозділу тачпада.

  6. Скопіюйте конфігураційний файл, щоб увімкнути libinput.

    sudo cp conf/90-libinput.conf /usr/share/X11/xorg.conf.d/
    

Вийдіть і увійдіть.

Ви побачите, що libinputвикористовується при запуску xinput list-props <your_touchpad_id>.

Якщо ви не любите користуватися libinput, ви завжди можете відключити його

sudo rm /usr/share/X11/xorg.conf.d/90-libinput.conf

Я щойно встановив його, тепер я з'ясовував, як налаштувати виявлення долоні. Схоже, це включено за замовчуванням, але я ще не зовсім розумію, як він використовує ширину та тиск, про який повідомляється ядро.

Схоже, в даний час немає великих переваг використання libinputв Ubuntu.

xf86-input-libinputпросто загортає його на Xorg і більше нічого. Тому додаткові жести не підтримуються. Принаймні, я не знаю, чи будуть вони. Вважаю, Вейленд або Мір будуть більш спроможними.

Після деяких випробувань я знайшов перевагу. Виникає проблема з тим, xorg-synapticsщо коли ви кладете палець на область кнопок, ви не можете використовувати інший палець для переміщення курсору. Це незручно для людей, які люблять використовувати апаратні кнопки для клацання. Про цю проблему багато разів повідомлялося як про помилку.

У libinputцього питання взагалі немає.

Це було весело перевірити. Дякую за запитання.


@ Pilot6 У чому сенс "додаткові жести не підтримуються" ?
ВРР

@VRR Справа в тому, що Ubuntu DE за замовчуванням не підтримує багато жестів. Просто мати libinputце не змінює. 1,2,3 відбитків пальців працюють з коробки. Виявлення долоні потенційно розумніше, але, схоже, воно не підтримує тачпад, що повідомляє лише про ширину. Нові моделі спрацьовують без тиску, оскільки вони працюють як сенсорний екран тощо.
Pilot6

Я думаю, що я трохи заплутав речі ... під час процесу ... тепер я отримую чорний екран після завантаження ... але немає екрана входу в lightdm ... це може бути пов'язано з xorg .. Я знаю номер старішої версії ..можливо хтось скаже мені процес, що зараз робити .. Я можу дістатись до tty
hunch

Якщо у вас є проблеми, просто усуньте /usr/share/X11/xorg.conf.d/99-libinput.conf. sudo rm /usr/share/X11/xorg.conf.d/99-libinput.conf
Пілот6

Це не вирішує проблему. Чи можете ви згадати щось про xserver-xorg-dev .... де ви також згадали .. будьте обережні .. Як повернутися до старшої версії ..
прим.

25

Для Ubuntu 15.10+ ви можете встановити libinput( хитрий , xenial , yakkety ) через apt:

sudo apt install xserver-xorg-input-libinput

Мені все-таки довелося редагувати конфігураційний файл, щоб увімкнути натискання, я вважаю, що Unity поглинає лібінпут, він викриє це через налаштування панелі управління (тут я використовував vi, ви можете використовувати gedit або все, що завгодно):

Відредагуйте такий файл (тестовано 16.04.2016-4-14 та 16.10 2016-10-14):

sudo vi /usr/share/X11/xorg.conf.d/90-libinput.conf 

Відрегулюйте розділ "тачпад", щоб додати, Option "tapping" "True"і Option "DisableWhileTyping" "True"якщо ви віддаєте перевагу цій поведінці:

Section "InputClass"
    Identifier "libinput touchpad catchall"
    MatchIsTouchpad "on"
    MatchDevicePath "/dev/input/event*"
    Driver "libinput"
    Option "Tapping" "True"
    Option "DisableWhileTyping" "True"
EndSection

Вийдіть, увійдіть .. насолоджуйтесь! :)


У лібінпуті немає опції "PalmDetection", DisableWhileTyping за замовчуванням увімкнено. Тож не потрібно все це додавати.
Пілот6

Коригували та видаляли обидва варіанти. Я залишив "Tapping" увімкнутим, тому що він не включений за замовчуванням.
JimB

А також не рекомендую використовувати libinput для всіх пристроїв. Клавіатура відстає в моєму випадку, тому я вибрав подію сенсорної панелі у своєму випадку event5і записав її у цей файл.
Пілот6

@ Pilot6 - чи можете ви надати ще кілька подробиць про те, як використовувати лібінпут лише для тачпада?
BeeOnRope

4
Здається, ви також можете додати Option "AccelSpeed" "-0.5", де значенням може бути поплавок від -1 (повільний курсор) до +1 (швидший курсор). Ви також можете експериментувати з цим та іншими значеннями, використовуючи xinput. спочатку знайдіть ідентифікатор, запустивши xinput, а якщо ваш ідентифікатор 12, ви можете зробити xinput list-props 12список усіх реквізитів. якщо ви хочете змінити його, отримайте int для опори (наприклад, libinput Accel Speed ​​(281): -0.500000), тоді ви можете зробити, xinput set-prop 12 281 -0.4щоб змінити акселерацію на -0.4.
David784


1

У мене була подібна проблема на Lubuntu 17. Я намагався встановити libinput та відредагувати файл .conf безрезультатно.

Але потім я побачив @ Pilot6 повідомлення вище про використання xinput для перевірки активності libinput (також було б непогано знати, який критерій перевірити, але я відхилився).

Я перевірив свій xinput за допомогою xinput list-props 14(у вашому випадку може бути інше число).

який дав мені synapticsтачпад.

У списку була опція виявлення долоні з числом, пов’язаним з нею (316).

Тому я xinput set-prop 14 316 1активував розпізнавання долонь. І це, нарешті, працює.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.