Bug 753937

Summary: Using Coordinate Transformation Matrix with a touch screen yields erratic pointer displacement
Product: [Fedora] Fedora Reporter: Erwan LE PENNEC <lepennec>
Component: xorg-x11-serverAssignee: Peter Hutterer <peter.hutterer>
Status: CLOSED WORKSFORME QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 16CC: xgl-maint
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-02-15 22:38:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
Simple script to set the Coordinate Transform Matrix for a touchscreen none

Description Erwan LE PENNEC 2011-11-14 21:46:23 UTC
Created attachment 533635 [details]
Simple script to set the Coordinate Transform Matrix for a touchscreen

Description of problem:
Assume you have a laptop with a touchscreen and you plug an external monitor. By default your touchscreen is mapped to the whole virtual screen. The way to fix this issue, as describe in the page <http://wiki.x.org/wiki/XInputCoordinateTransformationMatrixUsage>, is to use a suitable Coordinate Transform Matrix to map the touchscreen to the laptop screen. The script fixtouchscreen attached is an attempt to compute automatically this matrix. Unfortunately, this does not work as expected. Although, touching the screen move the pointer to the right location, the pointer jumps afterwards back and forth to the edge of the screen.


Version-Release number of selected component (if applicable): 
Name        : xorg-x11-server-Xorg
Version     : 1.11.2
Release     : 3.fc16
Architecture: i686

How reproducible: each time


Steps to Reproduce:
1. Modify the Coordinate Transform Matrix using xinput to something different than the identity
2. Touch the screen...
  
Actual results:
Pointer moves back and forth from the correct position to the edge.


Expected results:
Pointer stays at the correct position.


Additional info:
* It seems that this type of behavior has already been reported in Ubuntu <https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/774938> in which a patch is proposerd. Unfortunately, the xorg code has changed so that the patch does not work anymore.
* I had tested this with Fedora 15 and I remember this was working properly.

Comment 1 Peter Hutterer 2012-02-15 01:05:48 UTC
I just tried this on my machine here with  xinput set-prop "Wacom ISDv4 E6 Pen stylus" "Coordinate Transformation Matrix" 0.5 0 0 0 1 0 0 0 1, which maps the tablet to half the screen. No cursor jumps noticable. That's for current F16 and current xserver git master, both work fine.

Do you still see this issue with the latest version?

Comment 2 Erwan LE PENNEC 2012-02-15 13:31:47 UTC
I did not see this issue anymore because my touchscreen died in between... As long as I did not receive the replacement one, I will not be able to test. It's probably better to close this issue. I will open a new one if required.

Comment 3 Peter Hutterer 2012-02-15 22:38:07 UTC
ok, I'll close it as WORKSFORME for now, please reopen this bug when you get the next touchscreen.