Ubuntu – Display and cursor are out of sync on Ubuntu 18.04 tablet

18.04cursordisplay-rotationscreentablet

So I just upgraded my tablet from 16.04 to 18.04, and now the display has gone completely out of whack. At the login screen, my display is inverted, but the cursor and touchscreen are both completely normal. After logging in, the display and cursor both flip 180 degrees, so now the display is rightside up, but the cursor appears inverted.
Once the screen is rotated rightside-up, if I use a mouse or touchpad instead of the touchscreen, the cursor displays inverted on the screen, but the actual cursor position is normal (ie. if I drag my finger to the top right of the touchpad and click, the cursor moves to the bottom left of the screen, but the click happens at the top right).
xrandr -o normal flips everything; desktop, cursor position, and click position. And it all stays out of sync.

The first thing I want to try is telling X that it's initializing upside-down, and turning off screen rotation. Is this possible? Is there something else I should try?

Thanks!

Best Answer

I had the same issue and did the following:

  1. Find the display which should be rotated xrandr --query
  2. Invert the screen (my screen is called eDP-1) xrandr --output eDP-1 --rotated inverted
  3. Disable auto rotation of the screen gsettings set org.gnome.settings-daemon.plugins.orientation active false

If everything works fine just stop there. In my case I had to invert the cursor as well with the follwing commands:

  1. Find all input devices xinput
  2. Display the properties of your input device (my device was called "Virtual Core Pointer" with id=2) xinput list-props 2
  3. Change the "Coordinate Transformation Matrix" with xinput set-prop 2 "Coordinate Transformation Matrix" -1 0 -1 0 -1 0 0 0 1

For my answer I combined the following articles:

Rotate screen

Disable auto screen rotation

Rotate input device

Related Question