Olivier demonstrating the new features.
A lot of work has been put in making the user experience flawless and working as expected with complex and multihead monitor layouts. In particular:
- Wacom input devices coordinates are now automatically translated according to the monitor layout reported by Xorg (using XRandr). In a nutshell, this means that if you change display configuration or layout, and one of the displays is a screen tablet (or a tablet bound to a specific display), such changes are automatically propagated to the tablet pen devices, which will keep reporting the right coordinates.
- Screen rotation is now correctly mirrored in the input device coordinates. Again, this is all automatically taken care for the user; for bonus points, the left-handed orientation flipping of the tablet, as set by the option in the panel, will be taken into account when rotating the input.
- Related to these, we now have an option that allows the users to change how the screen aspect ratio influences the active input area on the tablet. By default, we map the whole input pad to the screen area, even in case they differ in aspect ratio; the new option allows instead for the active area on input pad to be cropped to the same aspect ratio of the display.
- Last but not least, it’s now possible to map a “Switch Monitor” action to a device button, that is, to change the output a tablet is bound to on the fly directly from the tablet itself! This will make it very easy to do complex operations involving multiple monitors without having to go to the settings panel every time.
GNOME 3.6 hasn’t been released yet, but we’re already planning features for the next 3.8 development cycle. In particular, a great feature demonstrated in the video, which I’m really looking forward to, is the introduction of an on-screen-display showing the layout of the tablet buttons, and all the action shortcuts associated with them. As you can see, the OSD itself is multihead and left-handed orientation aware.
Thanks a lot to Olivier and all the other developers who made all of this possible!