LINUX.ORG.RU

Иксы, мышь через evdev и тачпад synaptics


0

0

Имеется laptop с тачпадом synaptics. Ядро 2.6.21, собранное с модулем evdev, xorg-server-1.3, драйвер synaptics для иксов, 
драйвер evdev для иксов. И мышь Logitech MX Revolution. В ней 
есть некоторое количество дополнительных кнопок, которые
определяются xev'ом, только если мышь работает через драйвер 
evdev. Если мышь работает через драйвер mouse, то кнопок не 
видно в xev и они не работают. 

Задача: сделать, чтобы:
1) тачпад работал с драйвером synaptics и настройками из xorg.conf
2) работала мышь с драйвером evdev
3) иксы запускались, независимо от того, воткнута ли мышь в USB
4) не используя несколько layouts в xorg.conf, ибо неудобно.
5) при горячем подключении мыши, срабатывали настройки из xorg.conf
(например ButtonMapping)
Пока дошел до следующего:

Section "InputDevice"

	Identifier	"Logitech"
	Driver		"evdev"

	Option		"Protocol"	"evdev"
	Option		"Device"	"/dev/input/event5"

EndSection

Section "InputDevice"
	
	Identifier	"TouchPad"
	Driver		"synaptics"

	Option		"Device"	"/dev/input/event1"
	Option		"Protocol"	"evdev"

... (тут всякие опции synaptics, которые к делу отношения не имеют)

EndSection

Section "ServerLayout"

    Identifier	"default"

    Screen	"Laptop"

    InputDevice	"TouchPad"	"SendCoreEvents"
    InputDevice "Logitech"	"CorePointer"

...

EndSection


При таком конфиге работает все, кроме 3го пункта. При запуске иксов
с выключенной мышью, они ругаются на отсутствие CorePointer'а и не
запускаются. Нормальные люди обходят 3й пункт, вписывая вместо
конкретного девайса /dev/input/event5 общий для всех мышей девайс
/dev/input/mice - но этот девайс не будет работать с драйвером
evdev.

Буду рад помощи, в гугле был, но случай с тачпадом и необходимостью
использования evdev для мыши не нашел.
★★★
Ответ на: комментарий от no-dashi

Сарказм можно при себе оставить.

А за совет спасибо, сделав тачпад CorePointer'ом, а в мыше включив опцию SendCoreEvents можно добиться выполнения 1-4 пунктов.

По поводу пятого, если кому интересно: evdev в принципе не умеет ButtonMapping через xorg.conf. А xmodmap умеет работать только с CorePointer'ом. Проблема решается до конца при помощи утилиты xinput.

Rikz ★★★
() автор топика

Section "ServerFlags" Option "AllowMouseOpenFail" "on" EndSection

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.