Bug 1035852

Summary: touch screen handling does not rotate with display on tablet laptop
Product: [Fedora] Fedora Reporter: Jes Sorensen <Jes.Sorensen>
Component: xorg-x11-driversAssignee: X/OpenGL Maintenance List <xgl-maint>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 20CC: airlied, xgl-maint
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-07 22:28:06 UTC Type: Bug
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
Xorg log none

Description Jes Sorensen 2013-11-28 16:10:27 UTC
Created attachment 830301 [details]
Xorg log

Description of problem:
When rotating the display on a Lenovo Yoga 13 laptop the touch screen input
does not get updated to match the display. Basically when flipping the display
over into tablet mode, and then either in screen settings or with xrandr
rotation the display 90 or 180 degrees.

The display output is rotated as expected, but one has to get the tapping area
to hit as the touch input isn't recalibrated with the display.

Not sure what is the correct component to file this against, so please reassign
as appropriate

Version-Release number of selected component (if applicable):
kernel-3.11.9-300.fc20.x86_64
xorg-x11-drv-intel-2.21.15-5.fc20.x86_64

How reproducible:
Every time

Steps to Reproduce:
1. Go into settings->display and rotate the display or alternatively use:
   xrandr --output LVDS1 --rotation inverted
   (using xrandr as current GNOME display settings utility does not allow
    180 degree rotation :( )
2. Tap the touch screen and play guess the place to tap
3.

Actual results:
Touch screen stays calibrated at the original rotation

Expected results:
Touch screen calibration matches screen rotation

Additional info:
From dmesg:
[    3.096409] input: ELAN Touchscreen as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/input/input7
[    3.098386] hid-multitouch 0003:04F3:000A.0001: input,hiddev0,hidraw0: USB HID v1.11 Device [ELAN Touchscreen] on usb-0000:00:1a.0-1.5/input0

Let me know if you need anymore info to fix this.

Comment 1 Peter F. Patel-Schneider 2014-03-04 16:36:19 UTC
As far as I know, xrandr is behaving correctly here.  It is too low-level to understand that the touchscreen is rotated when the display is rotated.

There are several scripts that rotate both the screen and touchscreen.   One is available at https://github.com/wolneykien/xrandr-align (although I haven't tried it).   I also have an automatic rotation system for the Yoga 2 Pro that rotates both the screen and the touchscreen available at https://github.com/pfps/yoga-laptop although there are problems with the drivers for the Yoga sensors.

So, in sum, there probably is nothing to "fix" here, as there is nothing that is broken.

Comment 2 Jes Sorensen 2014-03-04 16:51:44 UTC
Peter,

Thanks for those links, I'll try to find some time to try them out.

I guess there is no x11 problem here, however the GNOME screen display
config tool needs to be fixed to allow for rotating 180 degrees. I did file
an upstream bug for that, but it hasn't rippled into F20 yet :(

Jes

Comment 3 Peter F. Patel-Schneider 2014-04-30 14:53:17 UTC
This bug should probably be reclassified.  I'm not sure just what it should be reclassified as, though.  In some sense it is NOTABUG, but maybe you want to changed the component to something in GNOME.