Мультитач жесты на тачпаде

Я хотел знать, как я могу настроить мультитач-жесты в Ubuntu. В Windows я могу сделать это с помощью программного обеспечения драйвера synaptics.

Я уже использовал synclient для настройки касаний, обнаружения ладоней, прокрутки и т. Д. Но я бы также хотел поддержку жестов. Возможно ли это вообще?

Информация о системе: Ubuntu 12.10, панель управления Synaptics

11
задан 28 July 2018 в 08:29

2 ответа

Я просто хотел предложить использовать свое продолжение mtrack, доступное на github: https://github.com/p2rkw/xf86-input-mtrack , так как оно поддерживает перетаскивание в 3 пальца (инструкции внизу ридй).

Я также использую его в сочетании с easystroke, но мне пришлось изменить easystroke, чтобы снять некоторые ограничения для абсолютных устройств, с этим простым изменением (я не помню точную причину для этого, извините):

diff --git a/handler.cc b/handler.cc
index 8830ea2..c9e3f91 100644
--- a/handler.cc
+++ b/handler.cc
@@ -563,7 +563,7 @@ protected:
        }
 protected:
        void move_back() {
-               if (!prefs.move_back.get() || (xstate->current_dev && xstate->current_dev->absolute))
+               if (!prefs.move_back.get())
                        return;
                XTestFakeMotionEvent(dpy, DefaultScreen(dpy), orig_x, orig_y, 0);
        }

Я также уменьшил погрешность для жестов:

diff --git a/gesture.cc b/gesture.cc
index 8531c08..0df990e 100644
--- a/gesture.cc
+++ b/gesture.cc
@@ -104,9 +104,9 @@ int Stroke::compare(RStroke a, RStroke b, double &score) {
                return -1;
        score = MAX(1.0 - 2.5*cost, 0.0);
        if (a->timeout)
-               return score > 0.85;
+               return score > 0.95;
        else
-               return score > 0.7;
+               return score > 0.92;
 }

... и это прекрасно работает.

Дополнительное замечание о болезненной конфигурации: вы можете использовать xinput для настройки на лету, затем соответствующим образом отредактировать xorg.conf или создать сценарий запуска с вызовами xinput.

0
ответ дан 28 July 2018 в 08:29

Обновление от 15.09.2016 Multitouch работает «из коробки», и все решения, перечисленные ниже (mtrack, synclient, ginn, ...), могут испортить ситуацию, так что если вы обновляете старое ядро, которое требует их , удалите все вспомогательные приложения и попробуйте поведение ядра "из коробки" с помощью сенсорной панели для менеджера рабочего стола. Он должен делать то, что вам нужно, и если вы хотите больше жестов и прочего, добавьте легкий удар, который работает хорошо. Теперь он сортируется в стандартных драйверах ввода ядра и работает без проблем, по крайней мере с ядром 4.1.32, хотя некоторые из ранних ядер 4.0 не будут работать. Текущее ядро ​​LTS 4.4 работает нормально, как и 4.7.

обновление 9/2015 ... ядра с ядром выше 3.14 или около того уже встроены в большинство мультитач, поэтому попробуйте удалить mtrack, если у вас возникли проблемы. со встроенного ядра 3.14 у меня работает только встроенный драйвер мультитача и easystroke, хотя в 4.0 и более поздних версиях наблюдается регрессия, которая ломает трекпад Apple. Хотя ядро ​​3.18 прекрасно работает.

Существует множество решений, большинство из которых еще немного выпечено. Многие из задокументированных устарели, поэтому обязательно посмотрите дату того, что вы гуглите.

Ubuntu имеет встроенную поддержку рудиментарных жестов (2 пальца) в апплете настроек мыши / сенсорной панели.
Я обнаружил, что он случайно отключен, и прокрутка двумя пальцами будет таинственным образом затенена, заставляя меня погрузиться в длинную цепочку поиска в Google, чтобы, возможно, вернуть его назад.
Затем я попробовал touchegg, который иногда работал.
Его проще всего настроить, и в нем есть хорошие инструкции, но он основан на более старом решении проблемы демоном.
Ubuntu Multitouch HOWO (вам придется гуглить, так как я могу включить только две ссылки) сильно устарело, но постепенно начинает работать. Он как бы предлагает другой набор разрозненных решений, но находится в процессе обновления.

В настоящее время я использую решение mtrack (в репозиториях) в сочетании с easystroke (приходится компилировать из источника).
Mtrack поддерживает версию ядра multitouch, а не специальное решение, такое как touchegg и ginn, если я правильно понимаю, но easystroke - это еще одно решение-демон, которое, похоже, пока работает хорошо поверх mtrack.

Подход Mtrack, кажется, является направлением развития.

удалите другие вещи (ginn, touchegg) , если вы используете его, а затем установите mtrack из полного репозитория с именем xserver-xorg-input-mtrack .

Настраивать боль, и я не получил три пальца, чтобы провести. См. Ссылку в конце ветки для ознакомления с различными конфигурационными файлами людей. Я использую трекпад apple magic, и он довольно хорош для этого, хотя в этом двойном касании есть один раздражающий глюк, и перетаскивание, например, для перемещения окна является ошибочным. Обходной путь - либо использовать фактическое нажатие кнопки для перемещения окон, либо колебаться в течение доли секунды после двойного нажатия и удерживать перед перемещением окна.

Я только что нашел easystroke , и пока mtrack не получит графический интерфейс, вы можете попробовать это, если вы достаточно предприимчивы, чтобы попробовать скомпилировать программу.

однажды скомпилировав, запустив make -j2 и установив sudo make install, запустите его с easystroke -g, чтобы получить графический интерфейс, и перейдите на страницу wiki для получения инструкций.

Еще одна проблема, с которой вам, возможно, придется разобраться, это драйверы.

Если вы используете mtrack , вам может потребоваться перенумеровать файлы, чтобы драйвер mtrack читался последним или настройки synaptics захватят все ,

Эти драйверы хранятся в /usr/share/X11/xorg.conf.d .

скопируйте драйвер mtrack в /etc/X11/xorg.conf.d , отредактируйте настройки в этой папке (см. Связанную ветку и README, как ) чтобы получить доброту трех пальцев, если можете (или используйте easystroke ), и переименуйте файл в большее число, чтобы 50-mtrack.conf превратился в 60-mtrack. conf , иначе я обнаружил, что синаптический драйвер будет захватывать ваш тачпад половину времени.

Помещение файла в / etc означает, что он не будет перезаписан при обновлениях, таких как файлы / usr , и что он читается последним и, таким образом, имеет приоритет над драйверы по умолчанию в / usr .

Надеюсь, это поможет. Это область довольно активного развития, поэтому все, что я напишу, вероятно, устареет через год, надеюсь, к лучшему.

0
ответ дан 28 July 2018 в 08:29

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

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