Many part of this commit were made by Carlos
Garnacho <carlosg@gnome.org>
WIP wacom: Port to GTK4
Lots of stuff missing and probably broken.
wacom: Port CcDrawingArea input to gestures
We have a handy GtkGestureStylus to use here, which avoids direct
handling of GdkEvents.
wacom: Update current stylus tracking to GtkGestureStylus
Use the ::proximity signal to notice when we are being hovered with
a tablet stylus, and look up the tool from there.
There's much going on under the hood here:
- Styli and tablets are now in split views, as per the mockups.
- CcWacomDevice and CcWacomTool are now in use, with the subsequent
API use changes. Moreover, using these objects means using the
newer schemas in gsettings-desktop-schemas, so there had to be
changes in the settings we store too.
- We now use CcTabletToolMap, plus listen to tool proximity events,
populating the "Stylus" sub-pane with those.
The rotation was being set directly from g-c-c when switching
monitors but g-s-d already does this when the display is set to
the tablet. This resulted in a discrepancy between setting the
monitor from g-c-c or from g-s-d when the left-handed mode was on.
https://bugzilla.gnome.org/show_bug.cgi?id=700439
So that we can disable the combobox if the checkbutton is disabled,
rather than having inverted meaning, which can be very confusing.
Also make sure that the combobox has the correct state if we
have an unconfigured tablet.
When making the combo box unsensitive, disable the label too.
Also make sure that both widgets are correctly made
sensitive again when we have monitors in the drop-down.
Provides a barebones implementation of a panel for selecting the
display to map a tablet to. This implementation uses a combo box
instead of the Display-panel-like UI specified by the mockup since
my Cairo and GTK-fu are weak.
https://bugzilla.gnome.org/show_bug.cgi?id=668546