diff --git a/tools/libinput-list-devices.c b/tools/libinput-list-devices.c index 11c3b10d..2869dd7a 100644 --- a/tools/libinput-list-devices.c +++ b/tools/libinput-list-devices.c @@ -241,6 +241,21 @@ rotation_default(struct libinput_device *device) return str; } +static void +print_pad_info(struct libinput_device *device) +{ + int nbuttons, nrings, nstrips; + + nbuttons = libinput_device_tablet_pad_get_num_buttons(device); + nrings = libinput_device_tablet_pad_get_num_rings(device); + nstrips = libinput_device_tablet_pad_get_num_strips(device); + + printf("Pad:\n"); + printf(" Rings: %d\n", nrings); + printf(" Strips: %d\n", nstrips); + printf(" Buttons: %d\n", nbuttons); +} + static void print_device_notify(struct libinput_event *ev) { @@ -321,6 +336,10 @@ print_device_notify(struct libinput_event *ev) printf("Rotation: %s\n", str); free(str); + if (libinput_device_has_capability(dev, + LIBINPUT_DEVICE_CAP_TABLET_PAD)) + print_pad_info(dev); + printf("\n"); }