As it turns out upon detecting a tablet in evdev_configure_device(), there isn't any call to return to escape the function once we've finished configuring the tablet. As a result, the code continues running and ends up reconfiguring the device as a pointer, resulting in strange behavior such as left-handed mode being enabled by default.
Signed-off-by: Stephen Chandler Paul <[email protected]> --- src/evdev.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/evdev.c b/src/evdev.c index 939d266..defd004 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1448,6 +1448,7 @@ evdev_configure_device(struct evdev_device *device) log_info(libinput, "input device '%s', %s is a tablet\n", device->devname, devnode); + return device->dispatch == NULL ? -1 : 0; } for (i = 0; i < KEY_MAX; i++) { -- 2.0.5 _______________________________________________ wayland-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/wayland-devel
