After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 624880 - Rotate wacom touchscreen devices
Rotate wacom touchscreen devices
Status: RESOLVED DUPLICATE of bug 709600
Product: gnome-settings-daemon
Classification: Core
Component: xrandr
3.0.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
3.10
Depends on:
Blocks:
 
 
Reported: 2010-07-20 22:00 UTC by Victor Vargas
Modified: 2014-02-14 01:35 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Victor Vargas 2010-07-20 22:00:55 UTC
This report was originally filled at:
https://bugs.edge.launchpad.net/ubuntu/+source/gnome-desktop/+bug/599478


When rotating the screen, touch inputs are not remapped correctly.

This implements the rotation using a list of matching input devices for which screen rotation needs to trigger a remapping.

For me, this works, except that remapped touch input on my lenovo x200 tablet seems to "snap" across the screen on a touch release when it is rotated, so ultimately, this patch is uncovering some other problem while fixing the rotation matching problem.


[1]http://launchpadlibrarian.net/51043158/101_rotate-touch-devices.patch
Comment 1 Bastien Nocera 2011-06-08 10:02:21 UTC
We now do this in gnome-settings-daemon, for single screen setups.

If we could figure out to which output the touchscreen was attached, it would make things easier.
Comment 2 Bastien Nocera 2011-06-09 23:20:42 UTC
And we should ignore the rotation functionality in the wacom plugin as well (and in the control-center front-end too).
Comment 3 Dan Winship 2011-06-14 14:57:20 UTC
(In reply to comment #1)
> We now do this in gnome-settings-daemon, for single screen setups.

In 3.0 or master? It doesn't work for me on a Thinkpad x61 tablet
Comment 4 Bastien Nocera 2011-06-14 15:56:13 UTC
(In reply to comment #3)
> (In reply to comment #1)
> > We now do this in gnome-settings-daemon, for single screen setups.
> 
> In 3.0 or master? It doesn't work for me on a Thinkpad x61 tablet

In master. For touchscreens. When using the "RotateTo" method (which is only used for automatic rotation, and the "Rotate" keyboard button.
Comment 5 Bastien Nocera 2011-11-07 18:19:29 UTC
For your X61 tablet, we're missing:
- an event telling us that the swivel state has changed (either an absolute orientation, as is available for tablets with an accelerometer, or a toggled state where we deduce the orientation from the state, "laptop" -> normal, "reversed/tablet" -> 180, or something)

- a whitelist of wacom touchscreen devices that we should rotate in the xrandr plugin (we currently only rotate evdev devices). The wacom plugin has a rotation option, and we want to make sure that the option is only applied to discrete tablets, not to builtin ones.

For the latter, I would take a "hack" to make your device work, as long as we can replace this by more definitive code in the future.
Comment 6 Dan Winship 2011-11-07 18:26:10 UTC
the screen on my x61 died a month ago, so I can't help here
Comment 7 Federico Mena Quintero 2011-11-08 18:12:59 UTC
For reference, right now gsd-xrandr-manager.c has these functions:

handle_rotate_windows() - Gets called when the XF86RotateWindows key gets pressed; rotates the RANDR output.  I understand that this is a hardware key that says "rotate the screen" on tablets or such - is this correct?

rotate_touchscreens() - Called by the above.  This actually rotates the input device.

From a quick look, these use helpers from gsd-input-helper.c to see whether a device is a touchscreen.

The patch from the original bug is not attached here - can someone please take care of that?
Comment 8 Bastien Nocera 2011-11-08 18:46:01 UTC
(In reply to comment #7)
> For reference, right now gsd-xrandr-manager.c has these functions:
> 
> handle_rotate_windows() - Gets called when the XF86RotateWindows key gets
> pressed; rotates the RANDR output.  I understand that this is a hardware key
> that says "rotate the screen" on tablets or such - is this correct?

Yes, but that's not where the accelerometer plugs in. The accelerometer input is used in the orientation plugin.

> rotate_touchscreens() - Called by the above.  This actually rotates the input
> device.
> 
> From a quick look, these use helpers from gsd-input-helper.c to see whether a
> device is a touchscreen.

Yep, we need new functions to determine whether a device is a wacom touchscreen as well (we only know the type of stylus used for wacom touchscreen, not whether they're actual touchscreens).

> The patch from the original bug is not attached here - can someone please take
> care of that?

It's not useful, we have code to rotate wacom tablets already in the wacom plugin (which we can copy/paste). We need to make sure that external wacom tablets follow the orientation preference from the wacom tool, and that wacom touchscreens follow the screen's orientation.
Comment 9 Bastien Nocera 2012-10-08 10:10:25 UTC
Reassigning to Olivier as it's wacom related.
Comment 10 Carlos Garnacho 2014-02-14 01:35:24 UTC
Thanks for taking the time to report this bug.
This particular bug has already been reported into our bug tracking system, but we are happy to tell you that the problem has already been fixed. It should be solved in the next software version. You may want to check for a software upgrade.

*** This bug has been marked as a duplicate of bug 709600 ***