On Fri, Apr 15, 2016 at 12:00:25PM +0100, Carlos Garnacho wrote: > Hey!, > > On Mon, Apr 11, 2016 at 5:15 AM, Peter Hutterer > <[email protected]> wrote: > > Signed-off-by: Peter Hutterer <[email protected]> > > --- > > Changes since v1: > > - new in this version > > > > src/evdev-tablet.c | 38 +------------------------------------- > > src/evdev.c | 52 > > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > > src/evdev.h | 3 +++ > > 3 files changed, 56 insertions(+), 37 deletions(-) > > > > diff --git a/src/evdev-tablet.c b/src/evdev-tablet.c > > index 9a1ac52..3c3ebcf 100644 > > --- a/src/evdev-tablet.c > > +++ b/src/evdev-tablet.c > > @@ -1571,45 +1571,9 @@ tablet_init_accel(struct tablet_dispatch *tablet, > > struct evdev_device *device) > > static void > > tablet_init_left_handed(struct evdev_device *device) > > { > > -#if HAVE_LIBWACOM > > - struct libinput *libinput = device->base.seat->libinput; > > - WacomDeviceDatabase *db; > > - WacomDevice *d = NULL; > > - WacomError *error; > > - const char *devnode; > > - > > - db = libwacom_database_new(); > > - if (!db) { > > - log_info(libinput, > > - "Failed to initialize libwacom context.\n"); > > - return; > > - } > > - error = libwacom_error_new(); > > - devnode = udev_device_get_devnode(device->udev_device); > > - > > - d = libwacom_new_from_path(db, > > - devnode, > > - WFALLBACK_NONE, > > - error); > > - > > - if (d) { > > - if (libwacom_is_reversible(d)) > > + if (evdev_tablet_has_left_handed(device)) > > evdev_init_left_handed(device, > > tablet_change_to_left_handed); > > - } else if (libwacom_error_get_code(error) == WERROR_UNKNOWN_MODEL) { > > - log_info(libinput, "Tablet unknown to libwacom\n"); > > - } else { > > - log_error(libinput, > > - "libwacom error: %s\n", > > - libwacom_error_get_message(error)); > > - } > > - > > - if (error) > > - libwacom_error_free(&error); > > - if (d) > > - libwacom_destroy(d); > > - libwacom_database_destroy(db); > > -#endif > > } > > > > static int > > diff --git a/src/evdev.c b/src/evdev.c > > index 6bb8986..a5511c5 100644 > > --- a/src/evdev.c > > +++ b/src/evdev.c > > @@ -43,6 +43,10 @@ > > #include "filter.h" > > #include "libinput-private.h" > > > > +#if HAVE_LIBWACOM > > +#include <libwacom/libwacom.h> > > +#endif > > + > > #define DEFAULT_WHEEL_CLICK_ANGLE 15 > > #define DEFAULT_MIDDLE_BUTTON_SCROLL_TIMEOUT ms2us(200) > > > > @@ -2858,3 +2862,51 @@ evdev_device_destroy(struct evdev_device *device) > > free(device->mt.slots); > > free(device); > > } > > + > > +bool > > +evdev_tablet_has_left_handed(struct evdev_device *device) > > +{ > > +#if HAVE_LIBWACOM > > + struct libinput *libinput = device->base.seat->libinput; > > + WacomDeviceDatabase *db; > > + WacomDevice *d = NULL; > > + WacomError *error; > > + const char *devnode; > > + bool has_left_handed = false; > > + > > + db = libwacom_database_new(); > > + if (!db) { > > + log_info(libinput, > > + "Failed to initialize libwacom context.\n"); > > + goto out; > > + } > > + > > + error = libwacom_error_new(); > > + devnode = udev_device_get_devnode(device->udev_device); > > + > > + d = libwacom_new_from_path(db, > > + devnode, > > + WFALLBACK_NONE, > > + error); > > + > > + if (d) { > > + if (libwacom_is_reversible(d)) > > + has_left_handed = true; > > + } else if (libwacom_error_get_code(error) == WERROR_UNKNOWN_MODEL) { > > + log_info(libinput, "Tablet unknown to libwacom\n"); > > + } else { > > + log_error(libinput, > > + "libwacom error: %s\n", > > + libwacom_error_get_message(error)); > > + } > > + > > + if (error) > > + libwacom_error_free(&error); > > + if (d) > > + libwacom_destroy(d); > > + libwacom_database_destroy(db); > > + > > +out: > > + return has_left_handed; > > +#endif > > +} > > This function should have a return value (I guess false is safe?) if > HAVE_LIBWACOM is not defined.
fixed, thanks. Cheers, Peter _______________________________________________ wayland-devel mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/wayland-devel
