On Wed, Jun 18, 2014 at 02:22:23PM +0200, Hans de Goede wrote: > Signed-off-by: Hans de Goede <hdego...@redhat.com> > --- > src/evdev.c | 2 ++ > src/evdev.h | 2 +- > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/src/evdev.c b/src/evdev.c > index 51ad5e3..b72e5e1 100644 > --- a/src/evdev.c > +++ b/src/evdev.c > @@ -608,11 +608,13 @@ evdev_configure_device(struct evdev_device *device) > if ((absinfo = libevdev_get_abs_info(evdev, ABS_X))) { > device->abs.min_x = absinfo->minimum; > device->abs.max_x = absinfo->maximum; > + device->abs.res_x = absinfo->resolution; > has_abs = 1; > } > if ((absinfo = libevdev_get_abs_info(evdev, ABS_Y))) { > device->abs.min_y = absinfo->minimum; > device->abs.max_y = absinfo->maximum; > + device->abs.res_y = absinfo->resolution;
This came up in the tablet branch when testing: the resolution of a device _may_ be 0. I don't know how many devices with ABS_X/Y still have zero, but especially when testing with uinput devices it always is. uinput currently doesn't let you set the resolution, the kernel patch to fix this stalled a while ago and needs someone motivated to pick it up again :) so I think it'd be safer to force the resolution to 1, prevents a couple of mathematical surprises lateron. Cheers, Peter PS: "save", not "safe" in the commit msg, except for when saving 1 is safe :) > has_abs = 1; > } > /* We only handle the slotted Protocol B in weston. > diff --git a/src/evdev.h b/src/evdev.h > index d057010..2db990f 100644 > --- a/src/evdev.h > +++ b/src/evdev.h > @@ -66,7 +66,7 @@ struct evdev_device { > const char *devname; > int fd; > struct { > - int min_x, max_x, min_y, max_y; > + int min_x, max_x, min_y, max_y, res_x, res_y; > int32_t x, y; > > int32_t seat_slot; > -- > 2.0.0 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel