From 917aef50900aaffca261d645d46674a7f897082b Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Mon, 31 Oct 2016 17:57:01 +0100 Subject: [PATCH] backends: extend tablet device checks The Clutter X11 backend can't drop CLUTTER_PEN_DEVICE and CLUTTER_ERASER_DEVICE in favor of CLUTTER_TABLET_DEVICE without losing information (as the driver will create one device for each). So make MetaInputSettings cater for both sets of device types. https://bugzilla.gnome.org/show_bug.cgi?id=773779 (backported from master for https://bugzilla.gnome.org/show_bug.cgi?id=775635) --- src/backends/meta-input-settings.c | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/backends/meta-input-settings.c b/src/backends/meta-input-settings.c index 9fc6f6089..ec9703259 100644 --- a/src/backends/meta-input-settings.c +++ b/src/backends/meta-input-settings.c @@ -744,7 +744,9 @@ update_tablet_keep_aspect (MetaInputSettings *input_settings, MetaOutput *output = NULL; gboolean keep_aspect; - if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE) + if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_ERASER_DEVICE) return; #ifdef HAVE_LIBWACOM @@ -792,6 +794,8 @@ update_device_display (MetaInputSettings *input_settings, MetaOutput *output; if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_ERASER_DEVICE && clutter_input_device_get_device_type (device) != CLUTTER_TOUCHSCREEN_DEVICE) return; @@ -825,7 +829,9 @@ update_tablet_mapping (MetaInputSettings *input_settings, GDesktopTabletMapping mapping; DeviceMappingInfo *info; - if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE) + if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_ERASER_DEVICE) return; #ifdef HAVE_LIBWACOM @@ -866,7 +872,9 @@ update_tablet_area (MetaInputSettings *input_settings, const guint32 *area; gsize n_elems; - if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE) + if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_ERASER_DEVICE) return; #ifdef HAVE_LIBWACOM @@ -905,7 +913,10 @@ update_tablet_left_handed (MetaInputSettings *input_settings, MetaInputSettingsClass *input_settings_class; gboolean enabled; - if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE) + if (clutter_input_device_get_device_type (device) != CLUTTER_TABLET_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_PEN_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_ERASER_DEVICE && + clutter_input_device_get_device_type (device) != CLUTTER_PAD_DEVICE) return; #ifdef HAVE_LIBWACOM