Signed-off-by: Peter Hutterer <[email protected]>
---
 tools/event-gui.c | 29 +++++++++++++----------------
 1 file changed, 13 insertions(+), 16 deletions(-)

diff --git a/tools/event-gui.c b/tools/event-gui.c
index 636c28b..fa0e1a0 100644
--- a/tools/event-gui.c
+++ b/tools/event-gui.c
@@ -602,6 +602,9 @@ handle_event_tablet(struct libinput_event *ev, struct 
window *w)
        struct libinput_event_tablet_tool *t = 
libinput_event_get_tablet_tool_event(ev);
        double x, y;
 
+       x = libinput_event_tablet_tool_get_x_transformed(t, w->width);
+       y = libinput_event_tablet_tool_get_y_transformed(t, w->height);
+
        switch (libinput_event_get_type(ev)) {
        case LIBINPUT_EVENT_TABLET_TOOL_PROXIMITY:
                if (libinput_event_tablet_tool_get_proximity_state(t) ==
@@ -613,25 +616,11 @@ handle_event_tablet(struct libinput_event *ev, struct 
window *w)
                        w->tool.x_up = 0;
                        w->tool.y_up = 0;
                } else {
-                       w->tool.x_in = 
libinput_event_tablet_tool_get_x_transformed(t,
-                                                                      
w->width);
-                       w->tool.y_in = 
libinput_event_tablet_tool_get_y_transformed(t,
-                                                                      
w->height);
+                       w->tool.x_in = x;
+                       w->tool.y_in = y;
                }
                break;
-       case LIBINPUT_EVENT_TABLET_TOOL_AXIS:
-               w->tool.x = libinput_event_tablet_tool_get_x_transformed(t,
-                                                                   w->width);
-               w->tool.y = libinput_event_tablet_tool_get_y_transformed(t,
-                                                                   w->height);
-               w->tool.pressure = libinput_event_tablet_tool_get_pressure(t);
-               w->tool.distance = libinput_event_tablet_tool_get_distance(t);
-               w->tool.tilt_x = libinput_event_tablet_tool_get_tilt_x(t);
-               w->tool.tilt_y = libinput_event_tablet_tool_get_tilt_y(t);
-               break;
        case LIBINPUT_EVENT_TABLET_TOOL_TIP:
-               x = libinput_event_tablet_tool_get_x_transformed(t, w->width);
-               y = libinput_event_tablet_tool_get_y_transformed(t, w->height);
                w->tool.pressure = libinput_event_tablet_tool_get_pressure(t);
                w->tool.distance = libinput_event_tablet_tool_get_distance(t);
                w->tool.tilt_x = libinput_event_tablet_tool_get_tilt_x(t);
@@ -644,6 +633,14 @@ handle_event_tablet(struct libinput_event *ev, struct 
window *w)
                        w->tool.x_up = x;
                        w->tool.y_up = y;
                }
+               /* fallthrough */
+       case LIBINPUT_EVENT_TABLET_TOOL_AXIS:
+               w->tool.x = x;
+               w->tool.y = y;
+               w->tool.pressure = libinput_event_tablet_tool_get_pressure(t);
+               w->tool.distance = libinput_event_tablet_tool_get_distance(t);
+               w->tool.tilt_x = libinput_event_tablet_tool_get_tilt_x(t);
+               w->tool.tilt_y = libinput_event_tablet_tool_get_tilt_y(t);
                break;
        case LIBINPUT_EVENT_TABLET_TOOL_BUTTON:
                break;
-- 
2.5.0

_______________________________________________
wayland-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to