[PATCH libinput 06/23] tools: handle LIBINPUT_TABLET_EVENT_TOOL_UPDATE in event-debug

Stephen Chandler Paul thatslyude at gmail.com
Thu Jun 12 20:28:27 PDT 2014


Signed-off-by: Stephen Chandler Paul <thatslyude at gmail.com>
Reviewed-by: Peter Hutterer <peter.hutterer at who-t.net>
---
 tools/event-debug.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/tools/event-debug.c b/tools/event-debug.c
index 5202fc9..7ba1e64 100644
--- a/tools/event-debug.c
+++ b/tools/event-debug.c
@@ -218,6 +218,9 @@ print_event_header(struct libinput_event *ev)
 	case LIBINPUT_EVENT_TABLET_AXIS:
 		type = "TABLET_AXIS";
 		break;
+	case LIBINPUT_EVENT_TABLET_TOOL_UPDATE:
+		type = "TABLET_TOOL_UPDATE";
+		break;
 	}
 
 	printf("%-7s	%s	", libinput_device_get_sysname(dev), type);
@@ -355,6 +358,50 @@ print_touch_event_without_coords(struct libinput_event *ev)
 }
 
 static void
+print_tool_update_event(struct libinput_event *ev)
+{
+	struct libinput_event_tablet *t = libinput_event_get_tablet_event(ev);
+	struct libinput_tool *tool = libinput_event_tablet_get_tool(t);
+	const char *tool_str;
+
+	switch (libinput_tool_get_type(tool)) {
+	case LIBINPUT_TOOL_NONE:
+		tool_str = "none";
+		break;
+	case LIBINPUT_TOOL_PEN:
+		tool_str = "pen";
+		break;
+	case LIBINPUT_TOOL_ERASER:
+		tool_str = "eraser";
+		break;
+	case LIBINPUT_TOOL_BRUSH:
+		tool_str = "brush";
+		break;
+	case LIBINPUT_TOOL_PENCIL:
+		tool_str = "pencil";
+		break;
+	case LIBINPUT_TOOL_AIRBRUSH:
+		tool_str = "airbrush";
+		break;
+	case LIBINPUT_TOOL_FINGER:
+		tool_str = "finger";
+		break;
+	case LIBINPUT_TOOL_MOUSE:
+		tool_str = "mouse";
+		break;
+	case LIBINPUT_TOOL_LENS:
+		tool_str = "lens";
+		break;
+	default:
+		abort();
+	}
+
+	print_event_time(libinput_event_tablet_get_time(t));
+	printf("%s (%#x)", tool_str, libinput_tool_get_serial(tool));
+	printf("\n");
+}
+
+static void
 print_touch_event_with_coords(struct libinput_event *ev)
 {
 	struct libinput_event_touch *t = libinput_event_get_touch_event(ev);
@@ -419,6 +466,9 @@ handle_and_print_events(struct libinput *li)
 		case LIBINPUT_EVENT_TABLET_AXIS:
 			print_tablet_axis_event(ev);
 			break;
+		case LIBINPUT_EVENT_TABLET_TOOL_UPDATE:
+			print_tool_update_event(ev);
+			break;
 		}
 
 		libinput_event_destroy(ev);
-- 
1.8.5.5



More information about the wayland-devel mailing list