Reduce pointer events to one single type
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 19 Dec 2013 03:15:28 +0000 (13:15 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Wed, 22 Jan 2014 00:50:14 +0000 (10:50 +1000)
The event type itself says enough about the actual event type, we don't need
to have separate structs for every type.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
src/libinput.c
src/libinput.h

index 672517bffae76afacb01a2e915aa4bad6966a5fd..3eff6c8593b4693820d754a3248eddd86c205a20 100644 (file)
@@ -65,30 +65,13 @@ struct libinput_event_keyboard {
        enum libinput_keyboard_key_state state;
 };
 
-struct libinput_event_pointer_motion {
-       struct libinput_event base;
-       uint32_t time;
-       li_fixed_t dx;
-       li_fixed_t dy;
-};
-
-struct libinput_event_pointer_motion_absolute {
+struct libinput_event_pointer {
        struct libinput_event base;
        uint32_t time;
        li_fixed_t x;
        li_fixed_t y;
-};
-
-struct libinput_event_pointer_button {
-       struct libinput_event base;
-       uint32_t time;
        uint32_t button;
        enum libinput_pointer_button_state state;
-};
-
-struct libinput_event_pointer_axis {
-       struct libinput_event base;
-       uint32_t time;
        enum libinput_pointer_axis axis;
        li_fixed_t value;
 };
@@ -146,85 +129,64 @@ libinput_event_keyboard_get_key_state(
 }
 
 LIBINPUT_EXPORT uint32_t
-libinput_event_pointer_motion_get_time(
-       struct libinput_event_pointer_motion *event)
+libinput_event_pointer_get_time(
+       struct libinput_event_pointer *event)
 {
        return event->time;
 }
 
 LIBINPUT_EXPORT li_fixed_t
-libinput_event_pointer_motion_get_dx(
-       struct libinput_event_pointer_motion *event)
+libinput_event_pointer_get_dx(
+       struct libinput_event_pointer *event)
 {
-       return event->dx;
+       return event->x;
 }
 
 LIBINPUT_EXPORT li_fixed_t
-libinput_event_pointer_motion_get_dy(
-       struct libinput_event_pointer_motion *event)
+libinput_event_pointer_get_dy(
+       struct libinput_event_pointer *event)
 {
-       return event->dy;
-}
-
-LIBINPUT_EXPORT uint32_t
-libinput_event_pointer_motion_absolute_get_time(
-       struct libinput_event_pointer_motion_absolute *event)
-{
-       return event->time;
+       return event->y;
 }
 
 LIBINPUT_EXPORT li_fixed_t
-libinput_event_pointer_motion_absolute_get_x(
-       struct libinput_event_pointer_motion_absolute *event)
+libinput_event_pointer_get_absolute_x(
+       struct libinput_event_pointer *event)
 {
        return event->x;
 }
 
 LIBINPUT_EXPORT li_fixed_t
-libinput_event_pointer_motion_absolute_get_y(
-       struct libinput_event_pointer_motion_absolute *event)
+libinput_event_pointer_get_absolute_y(
+       struct libinput_event_pointer *event)
 {
        return event->y;
 }
 
 LIBINPUT_EXPORT uint32_t
-libinput_event_pointer_button_get_time(
-       struct libinput_event_pointer_button *event)
-{
-       return event->time;
-}
-
-LIBINPUT_EXPORT uint32_t
-libinput_event_pointer_button_get_button(
-       struct libinput_event_pointer_button *event)
+libinput_event_pointer_get_button(
+       struct libinput_event_pointer *event)
 {
        return event->button;
 }
 
 LIBINPUT_EXPORT enum libinput_pointer_button_state
-libinput_event_pointer_button_get_state(
-       struct libinput_event_pointer_button *event)
+libinput_event_pointer_get_button_state(
+       struct libinput_event_pointer *event)
 {
        return event->state;
 }
 
-LIBINPUT_EXPORT uint32_t
-libinput_event_pointer_axis_get_time(
-       struct libinput_event_pointer_axis *event)
-{
-       return event->time;
-}
-
 LIBINPUT_EXPORT enum libinput_pointer_axis
-libinput_event_pointer_axis_get_axis(
-       struct libinput_event_pointer_axis *event)
+libinput_event_pointer_get_axis(
+       struct libinput_event_pointer *event)
 {
        return event->axis;
 }
 
 LIBINPUT_EXPORT li_fixed_t
-libinput_event_pointer_axis_get_value(
-       struct libinput_event_pointer_axis *event)
+libinput_event_pointer_get_axis_value(
+       struct libinput_event_pointer *event)
 {
        return event->value;
 }
@@ -655,16 +617,16 @@ pointer_notify_motion(struct libinput_device *device,
                      li_fixed_t dx,
                      li_fixed_t dy)
 {
-       struct libinput_event_pointer_motion *motion_event;
+       struct libinput_event_pointer *motion_event;
 
        motion_event = malloc(sizeof *motion_event);
        if (!motion_event)
                return;
 
-       *motion_event = (struct libinput_event_pointer_motion) {
+       *motion_event = (struct libinput_event_pointer) {
                .time = time,
-               .dx = dx,
-               .dy = dy,
+               .x = dx,
+               .y = dy,
        };
 
        post_device_event(device,
@@ -678,13 +640,13 @@ pointer_notify_motion_absolute(struct libinput_device *device,
                               li_fixed_t x,
                               li_fixed_t y)
 {
-       struct libinput_event_pointer_motion_absolute *motion_absolute_event;
+       struct libinput_event_pointer *motion_absolute_event;
 
        motion_absolute_event = malloc(sizeof *motion_absolute_event);
        if (!motion_absolute_event)
                return;
 
-       *motion_absolute_event = (struct libinput_event_pointer_motion_absolute) {
+       *motion_absolute_event = (struct libinput_event_pointer) {
                .time = time,
                .x = x,
                .y = y,
@@ -701,13 +663,13 @@ pointer_notify_button(struct libinput_device *device,
                      int32_t button,
                      enum libinput_pointer_button_state state)
 {
-       struct libinput_event_pointer_button *button_event;
+       struct libinput_event_pointer *button_event;
 
        button_event = malloc(sizeof *button_event);
        if (!button_event)
                return;
 
-       *button_event = (struct libinput_event_pointer_button) {
+       *button_event = (struct libinput_event_pointer) {
                .time = time,
                .button = button,
                .state = state,
@@ -724,13 +686,13 @@ pointer_notify_axis(struct libinput_device *device,
                    enum libinput_pointer_axis axis,
                    li_fixed_t value)
 {
-       struct libinput_event_pointer_axis *axis_event;
+       struct libinput_event_pointer *axis_event;
 
        axis_event = malloc(sizeof *axis_event);
        if (!axis_event)
                return;
 
-       *axis_event = (struct libinput_event_pointer_axis) {
+       *axis_event = (struct libinput_event_pointer) {
                .time = time,
                .axis = axis,
                .value = value,
index 2201d5d2527095fa00178d6617c5189690d34fc9..e60435080fa978bbd3c124e1ab32accad82f6e80 100644 (file)
@@ -144,10 +144,7 @@ struct libinput_seat;
 struct libinput_event;
 struct libinput_event_device_notify;
 struct libinput_event_keyboard;
-struct libinput_event_pointer_motion;
-struct libinput_event_pointer_motion_absolute;
-struct libinput_event_pointer_button;
-struct libinput_event_pointer_axis;
+struct libinput_event_pointer;
 struct libinput_event_touch_touch;
 
 /**
@@ -257,68 +254,56 @@ libinput_event_keyboard_get_key_state(
        struct libinput_event_keyboard *event);
 
 /**
- * @defgroup event_pointer_motion Pointer motion event
+ * @defgroup event_pointer Pointer motion event
  */
 
 uint32_t
-libinput_event_pointer_motion_get_time(
-       struct libinput_event_pointer_motion *event);
+libinput_event_pointer_get_time(
+       struct libinput_event_pointer *event);
 
 li_fixed_t
-libinput_event_pointer_motion_get_dx(
-       struct libinput_event_pointer_motion *event);
+libinput_event_pointer_get_dx(
+       struct libinput_event_pointer *event);
 
 li_fixed_t
-libinput_event_pointer_motion_get_dy(
-       struct libinput_event_pointer_motion *event);
+libinput_event_pointer_get_dy(
+       struct libinput_event_pointer *event);
 
 /**
- * @defgroup event_pointer_motion_absolute Absolute pointer motion event
+ * @defgroup event_pointer_absolute Absolute pointer motion event
  */
 
-uint32_t
-libinput_event_pointer_motion_absolute_get_time(
-       struct libinput_event_pointer_motion_absolute *event);
-
 li_fixed_t
-libinput_event_pointer_motion_absolute_get_x(
-       struct libinput_event_pointer_motion_absolute *event);
+libinput_event_pointer_get_absolute_x(
+       struct libinput_event_pointer *event);
 
 li_fixed_t
-libinput_event_pointer_motion_absolute_get_y(
-       struct libinput_event_pointer_motion_absolute *event);
+libinput_event_pointer_get_absolute_y(
+       struct libinput_event_pointer *event);
 
 /**
  * @defgroup event_pointer_button Pointer button event
  */
 
 uint32_t
-libinput_event_pointer_button_get_time(
-       struct libinput_event_pointer_button *event);
-
-uint32_t
-libinput_event_pointer_button_get_button(
-       struct libinput_event_pointer_button *event);
+libinput_event_pointer_get_button(
+       struct libinput_event_pointer *event);
 
 enum libinput_pointer_button_state
-libinput_event_pointer_button_get_state(
-       struct libinput_event_pointer_button *event);
+libinput_event_pointer_get_button_state(
+       struct libinput_event_pointer *event);
 
 /**
  * @defgroup event_pointer_axis Pointer axis event
  */
 
-uint32_t
-libinput_event_pointer_axis_get_time(
-       struct libinput_event_pointer_axis *event);
-
 enum libinput_pointer_axis
-libinput_event_pointer_axis_get_axis(
-       struct libinput_event_pointer_axis *event);
+libinput_event_pointer_get_axis(
+       struct libinput_event_pointer *event);
 
 li_fixed_t
-libinput_event_pointer_axis_get_value(
-       struct libinput_event_pointer_axis *event);
+libinput_event_pointer_get_axis_value(
+       struct libinput_event_pointer *event);
 
 /**
  * @defgroup event_pointer_button Pointer button event