Автор Тема: Touchpad или Multi-Touch от Synaptic  (Прочитано 19196 раз)

Оффлайн Ru_Grey

  • Завсегдатай
  • *
  • Сообщений: 146
    • Email
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #15 : 16.03.2012 13:46:04 »
Тогда пусть желающие вешают багу. Без проверки на оборудовании накладывать патч проблематично.
Я вешал багу #26026  ещё 2011-08-11, но увы она так и весит даже никто не ответил.
Я и мой ноут можем участвовать в тестировании. Только нужны пошаговое рук-во для меня.
« Последнее редактирование: 16.03.2012 13:48:00 от Ru_Grey »
Ударим перевыполнением плана отечественного Линукс по капитализму!!!

konovalenko_dima

  • Гость
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #16 : 16.08.2013 15:25:56 »
А если воспользоваться "методом 2-х разработчиков"? Один реверсинжинирит в стране, законодательство которой явно разрешает реверс-инжиниринг, а затем пишет, как оно работает, без примеров или участков восстановленного исходного кода. А второй по этим записям пишет код драйвера. Национальное законодательство имеет высший приоритет над любым документом, поэтому проблем с требованиями лицензии быть не должно. Как и с авторским правом на код, т.к. второй разработчик не видит кода из разбираемого файла, а пишет свой, основываясь на описании от первого разработчика.

Оффлайн Сергей-70

  • Давно тут
  • **
  • Сообщений: 496
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #17 : 22.07.2016 23:30:57 »
У меня тоже вопрос по тачпаду. Компьютер старенький по нынешним меркам - MSI X370 Вот здесь обзор и характеристики https://www.notebook-center.ru/overview_811.html. Указано, в частности, что поддерживается мультитачпад и прокрутка (вертикальная и горизонтальная).
После установки базальт 8 (ядро 4.4.14-std-def-alt0.M80P.1) тачпад определился, но нет ни мультитача, ни, что самое главное, прокрутки. Справедливости ради, раньше на нем убунта стояла, на ней прокрутка тоже не работала.
Для моего ноута эта проблема критичная, поскольку у него всего 2 usb порта и отдавать один из них под мышь как-то жалко))

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #18 : 23.07.2016 00:13:50 »
Вы не назвали что за базальт.
А то синаптиков целая пачка
$ apt-cache search synaptics
gpointing-device-settings - Configuration tool for pointing devices
gsynaptics - a settings tool for Synaptics touchpad driver
kde4-synaptiks - A touchpad/synaptics management tool for KDE
mate-desktop-synaptics - Synaptics touchpad support for mate-desktop
xorg-drv-synaptics - Synaptics touchpad input driver
xorg-drv-synaptics-devel - Synaptics touchpad input driver development package
xorg-conf-synaptics - Config file for Synaptics touchpads
xorg-synaptics-touchfreeze - Disable Synaptics touchpad temporarily when typing
и каждый(е) для своего случая.
Например xorg-*-synaptics вообще от DE не зависит, но настраивается исключительно из консольного редактора. Настроек много: даухпальцевый скролл произвольно в поле или в своём баре, круговой скролл.
Из выброса видно, что у mate и kde своя поддержка и почти наверняка с гуем. Первые два, это под xfce, но какой из них более правильный, не помню - надо смотреть.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #19 : 23.07.2016 00:55:17 »
Ну например.
Конфиг-файл /etc/X11/xorg.conf.d/20-synaptics.conf из пакета xorg-conf-synaptics, - требуется и пакет xorg-drv-synaptics
# Disable the tap (if you don't like it)
        #Option "MaxTapTime" "0"
# Which mouse button is reported on a non-corner one-finger tap
        Option "TapButton1" "1"
# Which mouse button is reported on a non-corner two-finger tap
        #Option "TapButton2" "2"
# Which mouse button is reported on a non-corner three-finger tap
        #Option "TapButton3" "3"
# Enable vertical scrolling when dragging along the right edge
# Включить вертикальную прокрутку при перемещении вдоль правого края
        #Option "VertEdgeScroll" "on"
# Enable vertical scrolling when dragging with two fingers anywhere on the touchpad
# Включить вертикальную прокрутку при перетаскивании двумя пальцами в любом месте тачпада
        #Option "VertTwoFingerScroll" "on"
# Enable horizontal scrolling when dragging along the bottom edge
# Включить горизонтальную прокрутку при перемещении вдоль нижнего края
        #Option "HorizEdgeScroll" "on"
# Enable horizontal scrolling when dragging with two fingers anywhere on the touchpad
# Включить горизонтальную прокрутку при перетаскивании двумя пальцами в любом месте тачпада
        #Option "HorizTwoFingerScroll" "on"
# If on, circular scrolling is used
# Если включено, круговой скроллинг используется
        #Option "CircularScrolling" "on"
# Trigger region on the touchpad to start circular scrolling
        #Option "CircScrollTrigger" "2"
# Play with this values to set the precision of two finger scroll
# Поиграйте с этими значениями для установки двухпальцевого скроллинга
# (For touchpads not capable of detecting multiple fingers
# (Для тачпадов не способных обнаружить несколько пальцев
# but are capable of detecting finger pressure and width)
# но способных обнаружить давление пальца и ширину)
        #Option "EmulateTwoFingerMinZ" "40"
        #Option "EmulateTwoFingerMinW" "8"
# Your finger needs to produce this many scrolls per second in order to start coasting
        #Option "CoastingSpeed" "0"
# ETPS/2 Elantech Touchpad's software keys can be reconfigured
# ETPS/2 Elantech Touchpad'ов софтовые клавиши можно перенастроить
        #Option "SoftButtonAreas"  "60% 0 82% 0 40% 59% 82% 0"
По-умолчанию, когда всё закомментировано кроме второй опции сверху, есть двухпальцевый вертикальный скроллинг в любой зоне тачпада, но нет двухпальцевого горизонтильного скроллинга, и есть однопальцевый удар по тачпаду эмулирующий левую кнопку мыши/тачпада.

- Опции 2, 3 и 4 (счёт сверху в конфиге), определяют одно, двух и трёхпальцевый удар по тачпаду, эмулируя 1-ую, 2-ую и 3-тью кнопки мыши или кнопки тачпада.
В данном случае - см. опции 2 3 4 в конфиге - удар по тачпаду, - параметр в конце каждой опции:
1 - однопальцевый удар - эмуляция левой кнопки мыши/тачпада
2 - двухпальцевый удар - эмуляция кнопки на колесе мыши или двух одновременно нажатых кнопок тачпада
3 - трёхпальцевый удар - эмуляция правой кнопки мыши/тачпада
Вы можете изменить опции конфига вот так, чтобы однопальцевый удар эмулировал левую кнопку мыши/тачпада, двухпальцевый удар - правую кнопку мыши/тачпада, а трёхпальцевый удар эмулировал кнопку на колесе мыши или нажатие двух клавиш тачпада:
# Which mouse button is reported on a non-corner one-finger tap
        Option "TapButton1" "1"
# Which mouse button is reported on a non-corner two-finger tap
        Option "TapButton2" "3"
# Which mouse button is reported on a non-corner three-finger tap
        Option "TapButton3" "2"

- Первая сверху опция запрещает удар по тачпаду, даже если любая(ые) из трёх следующих опций раскомментированы, - т.о. эмуляция кнопок мыши только через кнопки тачпада.

Для активации необходимой опции, требуется её раскомментировать и перезапустить Х-сервер или перегрузиться.
Само-собой после изменения требуется сохранение.

Графические конфигураторы обычно не конфигурируют зоны управления скроллингом.
Как впрочем и не изменяют эмуляцию кнопок мыши.
Приведённый synaptics-конфигуратор может показаться сначала несколько сложным или непривычным, но он и наиболее мощный.
Но поглядывайте чтобы разные синаптики не пытались доминировать друг над другом - работать должен только один.
« Последнее редактирование: 23.07.2016 03:11:16 от Speccyfighter »

Оффлайн Сергей-70

  • Давно тут
  • **
  • Сообщений: 496
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #20 : 23.07.2016 10:58:23 »
Установленная система - Базальт 8.0 Рабочая станция
mate удалено, поставлен xfce

В системе установлены gpoining-device-setting, synaptic, synaptic-usermode, xorg-conf-synaptics, xorg-drv-synaptics
После того, как в gpoining-device-setting установлена эмуляция скроллинга (нажатием кнопки 1 и проведением пальца вверх-вниз, право-лево) - такой скроллинг эмулируется. Также появляется вертикальный скроллинг (двойной тап по тачпаду и пальцем вверх-вниз). Больше ничего.
В 20-synaptics.conf раскомментировал строки
Option "VertEdgeScroll" "on"
Option "HorizEdgeScroll" "on"
Option "TapButton2" "2"
Скроллинга нет, эмуляции кнопки 2 тоже нет. Но бог бы с многопальцевыми фигурами, скроллинг бы наладить

PS synaptic - это к данной проблеме вроде не относится))
« Последнее редактирование: 23.07.2016 11:14:15 от Сергей-70 »

Оффлайн Сергей-70

  • Давно тут
  • **
  • Сообщений: 496
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #21 : 23.07.2016 11:08:31 »
Но поглядывайте чтобы разные синаптики не пытались доминировать друг над другом - работать должен только один.
А можно об этом поподробнее - как определить доминанта ))

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #22 : 23.07.2016 14:03:52 »
Покажите вывод команды:
ls /etc/X11/xorg.conf.d/

Оффлайн Сергей-70

  • Давно тут
  • **
  • Сообщений: 496
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #23 : 23.07.2016 16:51:44 »
ls /etc/X11/xorg.conf.d/
10-evdev.conf      90-input-thinkpad.conf
20-synaptics.conf  95-input-keyboard.conf

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #24 : 23.07.2016 17:41:32 »
Но поглядывайте чтобы разные синаптики не пытались доминировать друг над другом - работать должен только один.
А можно об этом поподробнее - как определить доминанта ))

Тот что в DE.
Например:
Сизифная регулярка на xfce 4.12 переведённая с systemd на sysv
Есть пакет: xfce4-settings
Файл настроек GUI - xfce4-mouse-settings (вкладка тачпад)
Нет: gpoining-device-setting, gsynaptics
Есть также: xorg-conf-synaptics, xorg-drv-synaptics

Однопальцевый удар в xorg-conf-synaptics включен,  но при выключении удара по тачпаду в xfce4-mouse-setting, тачпад откажется воспринимать удары.
xfce4-mouse-setting отлично обрабатывает однопальцевый и двухпальцевый удары (ПКМ), но для трёхпальцевого нужна изрядная сноровка.
В настройке прокрутки xfce4-mouse-setting есть:
Выключено
Край прокрутки
Прокрутка двумя пальцами
Циклическая прокрутка

Отдельной опцией: Включить горизонтальную прокрутку

Зачем же тогда нужен xorg-*-synaptics с дефолтным однопальцевым ударом?, - чтобы в *dm на залогинивании был однопальцевый удар. Настройки xfce4-mouse-setting для тачпада будут работать только в пределах сессии xfce.

Оффлайн Сергей-70

  • Давно тут
  • **
  • Сообщений: 496
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #25 : 23.07.2016 18:04:53 »
Итак, я правильно понял, что настройки для тачпада в xfce система берет из файла /home/papa/.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml ?
В xfce4-mouse-settings на моем ноуте тачпад определяется как ImExPs/2 Generic Explorer Mouse
Цитировать
В настройке прокрутки xfce4-mouse-setting есть:
Выключено
Край прокрутки
Прокрутка двумя пальцами
Циклическая прокрутка
Это ручками конфиг надо править? Может быть специфических настроек тачпада нет потому что он определяется как мышь?
« Последнее редактирование: 23.07.2016 18:15:51 от Сергей-70 »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #26 : 23.07.2016 23:23:39 »
Итак, я правильно понял, что настройки для тачпада в xfce система берет из файла /home/papa/.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml ?

Да, это оно - тачпад nx6110:
$ xinput
⎡ Virtual core pointer                    id=2 [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              id=4 [slave  pointer  (2)]
⎜   ↳ A4Tech USB Mouse                        id=9 [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad              id=11 [slave  pointer  (2)]
⎣ Virtual core keyboard                    id=3 [master keyboard (2)]
    ↳ Virtual core XTEST keyboard              id=5 [slave  keyboard (3)]
    ↳ Power Button                            id=6 [slave  keyboard (3)]
    ↳ Video Bus                                id=7 [slave  keyboard (3)]
    ↳ Sleep Button                            id=8 [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            id=10 [slave  keyboard (3)]
    ↳ HP WMI hotkeys                          id=12 [slave  keyboard (3)]
$ cat ./.config/xfce4/xfconf/xfce-perchannel-xml/pointers.xml
<?xml version="1.0" encoding="UTF-8"?>

<channel name="pointers" version="1.0">
  <property name="DisableTouchpadWhileTyping" type="bool" value="true"/>
  <property name="SynPS2_Synaptics_TouchPad" type="empty">
    <property name="Properties" type="empty">
      <property name="Synaptics_Edge_Scrolling" type="array">
        <value type="int" value="0"/>
        <value type="int" value="0"/>
        <value type="int" value="0"/>
      </property>
      <property name="Synaptics_Two-Finger_Scrolling" type="array">
        <value type="int" value="1"/>
        <value type="int" value="1"/>
      </property>
      <property name="Synaptics_Circular_Scrolling" type="int" value="0"/>
      <property name="Synaptics_Circular_Scrolling_Trigger" type="int" value="0"/>
      <property name="Synaptics_Tap_Action" type="array">
        <value type="int" value="0"/>
        <value type="int" value="0"/>
        <value type="int" value="0"/>
        <value type="int" value="0"/>
        <value type="int" value="1"/>
        <value type="int" value="3"/>
        <value type="int" value="2"/>
      </property>
    </property>
  </property>
</channel>

В xfce4-mouse-settings на моем ноуте тачпад определяется как ImExPs/2 Generic Explorer Mouse
мышь?
Может быть специфических настроек тачпада нет потому что он определяется как мышь?

Полазил тут немного по гуглу, часа 3 (или 4?), и появилось у меня очень нехорошее предчувствие, что виновник всему линуксовое ядро. И подобные проблемы появились далеко не вчера:
http://www.linuxquestions.org/questions/linux-hardware-18/laptop-with-imexps-2-generic-explorer-mouse-touchpad-645701/
https://bugzilla.kernel.org/show_bug.cgi?id=43197
https://forums.linuxmint.com/viewtopic.php?t=111647#p625860
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/359363

У меня появилась не очень хорошая идея перерыть всю документацию по ядру и ядерную рассылку.
Пока прохлаждался на поиске,
touchpad detected as imexps/2 generic explorer mouse
заметил, что этой проблеме также подвержены и разные модели Dell.
И проблема именно в Линукс, а не в альтах вообще.
Этот баг надо на багтрекер, но быстрого результата, да и результата вообще, я бы не стал ожидать. И было бы хорошо если я ошибаюсь.

Цитировать
В настройке прокрутки xfce4-mouse-setting есть:
Выключено
Край прокрутки
Прокрутка двумя пальцами
Циклическая прокрутка
Это ручками конфиг надо править?

Мышью или тачпадом, но можно и руками.

Как не костыль, а даже оглоблю, можно было бы использовать маленький STLab USB2.0 4-port hub размером чуть больше спичечного коробка. Блоком питания не комплектуется, но на флешки, мышь и клавиатуру его хватит.
« Последнее редактирование: 23.07.2016 23:29:29 от Speccyfighter »

Оффлайн Сергей-70

  • Давно тут
  • **
  • Сообщений: 496
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #27 : 24.07.2016 08:26:39 »
То есть линукс неправильно определяет некоторые типы тачпадов и поэтому проблема может быть кардинально решена только исправлением ядра?
Ну ок.
А есть ли обходные пути? Например эмуляция скроллинга типа той, которую предоставляет gpointing-device-settings?
Ведь таким образом можно эмулировать и зоны для скроллинга и всякие другие штуки
« Последнее редактирование: 24.07.2016 08:28:11 от Сергей-70 »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #28 : 24.07.2016 08:40:25 »
А попробуйте xorg-drv-libinput поставить, он перекроет собой настройки synaptics. Xfce 4.12 должен его поддерживать. После чего пробуйте настраивать тачпад в xfce.

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Touchpad или Multi-Touch от Synaptic
« Ответ #29 : 24.07.2016 08:46:59 »
Кстати, прокрутка может быть двух видов: двумя пальцами вверх-вниз и влево-вправо; одним пальцем по правому краю тачпада вверх-вниз и одним пальцем по нижнему краю вправо-влево. Оба вида прокрутки не работают?