Emulate3Buttons not honored

Peter Hutterer peter.hutterer at who-t.net
Mon Jul 25 20:03:55 PDT 2011


On Mon, Jul 25, 2011 at 09:41:34PM -0400, K Vanw wrote:
> I'm trying to get my "ORtek Wireless Touchpad keyboard" to emulate 3
> buttons. If I use xinput to set the "Evdev Middle Button Emulation" to
> true, it works fine. But I can't get X to set that property from
> x.config. I have this file (55-3button.conf) in my x.config.d/ folder:
> 
> Section "InputClass"
>  Identifier "Middle button emulation class"
>  MatchIsPointer "on"
>  MatchProduct "ORtek Wireless Touchpad Keyboard"
>  Option "Emulate3Buttons" "on"
>  Option "Emulate3Timeout" "51"
> EndSection
> 
> The relevant lines in Xorg.0.log are:
> 
> [104142.299] (**) ORtek Wireless Touchpad Keyboard: Applying
> InputClass "Middle button emulation class"
> [104142.300] (--) ORtek Wireless Touchpad Keyboard: Found 3 mouse buttons
> [104142.300] (--) ORtek Wireless Touchpad Keyboard: Found scroll wheel(s)
> [104142.300] (--) ORtek Wireless Touchpad Keyboard: Found relative axes
> [104142.300] (--) ORtek Wireless Touchpad Keyboard: Found x and y relative axes
> [104142.300] (--) ORtek Wireless Touchpad Keyboard: Found keys
> [104142.300] (II) ORtek Wireless Touchpad Keyboard: Configuring as mouse
> [104142.300] (II) ORtek Wireless Touchpad Keyboard: Configuring as keyboard
> [104142.300] (II) ORtek Wireless Touchpad Keyboard: Adding scrollwheel support
> [104142.300] (**) Option "Emulate3Buttons" "on"
> [104142.300] (**) Option "Emulate3Timeout" "51"
> [104142.300] (**) ORtek Wireless Touchpad Keyboard: YAxisMapping:
> buttons 4 and 5
> [104142.300] (**) ORtek Wireless Touchpad Keyboard:
> EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout:
> 200
> 
> Note that X reports that it 'Found 3 mouse buttons', but in fact there
> are only 2 real buttons. 

That information comes from the kernel.

> After X starts, xinput reports:
> 
> # xinput list-props 'pointer:ORtek Wireless Touchpad Keyboard'
> Device 'ORtek Wireless Touchpad Keyboard':
> Device Enabled (134): 1
> Coordinate Transformation Matrix (136): 1.000000, 0.000000, 0.000000,
> 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
> Device Accel Profile (261): 0
> Device Accel Constant Deceleration (262): 1.000000
> Device Accel Adaptive Deceleration (263): 1.000000
> Device Accel Velocity Scaling (264): 10.000000
> Device Product ID (253): 1444, 4096
> Device Node (254): "/dev/input/event5"
> Evdev Axis Inversion (265): 0, 0
> Evdev Axes Swap (267): 0
> Axis Labels (268): "Rel X" (144), "Rel Y" (145)
> Button Labels (269): "Button Left" (137), "Button Middle" (138),
> "Button Right" (139), "Button Wheel Up" (140), "Button Wheel Down"
> (141), "Button Horiz Wheel Left" (142), "Button Horiz Wheel Right"
> (143)
> Evdev Middle Button Emulation (270): 0
> Evdev Middle Button Timeout (271): 51
> Evdev Wheel Emulation (272): 0
> Evdev Wheel Emulation Axes (273): 0, 0, 4, 5
> Evdev Wheel Emulation Inertia (274): 10
> Evdev Wheel Emulation Timeout (275): 200
> Evdev Wheel Emulation Button (276): 4
> Evdev Drag Lock Buttons (277): 0
> 
> As you can see, the Middle Button Emulation is not set. but "xinput
> set-prop 10 270 1" will set it correctly. So how do I get this set via
> an xorg.conf.d file?

try starting a plain X server without a desktop environment. does it work
then?
 
Cheers,
  Peter



More information about the xorg mailing list