Hi Peter,

Thanks for getting back.

I have had a look into the implementation of 3rd button emulation this morning. 
If this feature were to be extended to touch points would you recommend 
altering xf86-input-evdev to not filter out touch events or should this option 
be lower down the stack? It seems xorg is responsible for emulating a pointer 
based on touches so should it be responsible for emulating clicks (buttons 1, 2 
or 3)?

Harry


Harry Mallon

CODEX | Software Engineer

60 Poland Street | London | England | W1F 7NT

E [email protected]<mailto:[email protected]> | T +44 203 7000 
989<callto:+44%20203%207000%20989>

Website<www.codexdigital.com> | Facebook<https://www.facebook.com/codexdigital> 
| Twitter<http://twitter.com/codexdigital>

[http://www.codexdigital.com/?action=asset&id=E55D8A6F-AF62-4978-8FF1-435A85AFADBF]<http://www.codexdigital.com>

On 16 Jun 2016, at 03:29, Peter Hutterer 
<[email protected]<mailto:[email protected]>> wrote:

On Tue, Jun 14, 2016 at 03:32:40PM +0000, Harry Mallon wrote:
Hi all,

I am trying to get my PenMount PM1300A touchscreen to accept hold to right 
click (Evdev Third Button Emulation) on CentOS7. Kernel 
3.10.0-327.18.2.el7.x86_64. xorg-x11-drv-evdev 2.9.2.

see https://bugs.freedesktop.org/show_bug.cgi?id=96494, this only just came
up as a bug.

short answer: it's a touchscreen that doesn't emulate a left button click,
so evdev won't reassign the button.

Cheers,
  Peter


My /etc/X11/xorg.conf contains:
# Setup the touch screen
Section "InputClass"
   Identifier "PenMount Touchscreen"
   MatchVendor "PenMount"
   MatchProduct "PenMount PM1300A"
   Driver "evdev"
   Option "InvertX" "on"
   Option "InvertY" "on"
   Option "EmulateThirdButton" "on"
EndSection

xinput reports:
$ DISPLAY=:0 xinput list-props 13
Device 'PenMount PM1300A':
Device Enabled (136): 1
Coordinate Transformation Matrix (138): 1.000000, 0.000000, 0.000000, 0.000000, 
1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (257): 0
Device Accel Constant Deceleration (258): 1.000000
Device Accel Adaptive Deceleration (259): 1.000000
Device Accel Velocity Scaling (260): 10.000000
Device Product ID (263): 5345, 13568
Device Node (264): "/dev/input/event6"
Evdev Axis Inversion (273): 1, 1
Evdev Axis Calibration (274): <no items>
Evdev Axes Swap (275): 0
Axis Labels (276): "Abs MT Position X" (291), "Abs MT Position Y" (292), "None" 
(0), "None" (0)
Button Labels (277): "Button Unknown" (266), "Button Unknown" (266), "Button 
Unknown" (266), "Button Wheel Up" (142), "Button Wheel Down" (143)
Evdev Scrolling Distance (278): 0, 0, 0
Evdev Middle Button Emulation (279): 0
Evdev Middle Button Timeout (280): 50
Evdev Third Button Emulation (281): 1
Evdev Third Button Emulation Timeout (282): 1000
Evdev Third Button Emulation Button (283): 3
Evdev Third Button Emulation Threshold (284): 20
Evdev Wheel Emulation (285): 0
Evdev Wheel Emulation Axes (286): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (287): 10
Evdev Wheel Emulation Timeout (288): 200
Evdev Wheel Emulation Button (289): 4
Evdev Drag Lock Buttons (290): 0

$ DISPLAY=:0 xinput test-xi2 13
PenMount PM1300A                         id=13 [slave  pointer  (2)]
Reporting 4 classes:
Class originated from: 13. Type: XIButtonClass
Buttons supported: 5
Button labels: "Button Unknown" "Button Unknown" "Button Unknown" "Button Wheel 
Up" "Button Wheel Down"
Button state:
Class originated from: 13. Type: XIValuatorClass
Detail for Valuator 0:
 Label: Abs MT Position X
 Range: 0.000000 - 2047.000000
 Resolution: 0 units/m
 Mode: absolute
 Current value: 1443.000000
Class originated from: 13. Type: XIValuatorClass
Detail for Valuator 1:
 Label: Abs MT Position Y
 Range: 0.000000 - 2047.000000
 Resolution: 0 units/m
 Mode: absolute
 Current value: 240.000000
Class originated from: 13. Type: XITouchClass
Touch mode: direct
Max number of touches: 10

I have tested with a usb mouse and I can successfully get "Button 3" working in 
xinput test when using a similar configuration, but not the touchscreen.

I have seen a couple of bugs like this while searching but they all seem to 
have expired without clearly being fixed. Are these still current?
https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-evdev/+bug/1084938
https://bbs.archlinux.org/viewtopic.php?id=187970


Yours,
Harry

Harry Mallon

CODEX | Software Engineer

60 Poland Street | London | England | W1F 7NT

E 
[email protected]<mailto:[email protected]><mailto:[email protected]>
 | T +44 203 7000 989<callto:+44%20203%207000%20989>

Website<www.codexdigital.com<http://www.codexdigital.com/>> | 
Facebook<https://www.facebook.com/codexdigital> | 
Twitter<http://twitter.com/codexdigital>

[http://www.codexdigital.com/?action=asset&id=E55D8A6F-AF62-4978-8FF1-435A85AFADBF]<http://www.codexdigital.com><http://www.codexdigital.com/?action=asset&id=E55D8A6F-AF62-4978-8FF1-435A85AFADBF]%3Chttp://www.codexdigital.com%3E>

_______________________________________________
[email protected]<mailto:[email protected]>: X.Org<http://x.org/> support
Archives: http://lists.freedesktop.org/archives/xorg
Info: https://lists.x.org/mailman/listinfo/xorg
Your subscription address: %(user_address)s

_______________________________________________
[email protected]: X.Org support
Archives: http://lists.freedesktop.org/archives/xorg
Info: https://lists.x.org/mailman/listinfo/xorg
Your subscription address: %(user_address)s

Reply via email to