Add a weston_pointer_axis_event
Use an event struct to pass axis events around. This helps dealing with the
upcoming axis discrete changes.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
diff --git a/src/compositor.h b/src/compositor.h
index 130b258..ddcafc6 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -251,6 +251,11 @@
double dy;
};
+struct weston_pointer_axis_event {
+ uint32_t axis;
+ wl_fixed_t value;
+};
+
struct weston_pointer_grab;
struct weston_pointer_grab_interface {
void (*focus)(struct weston_pointer_grab *grab);
@@ -259,7 +264,8 @@
void (*button)(struct weston_pointer_grab *grab,
uint32_t time, uint32_t button, uint32_t state);
void (*axis)(struct weston_pointer_grab *grab,
- uint32_t time, uint32_t axis, wl_fixed_t value);
+ uint32_t time,
+ struct weston_pointer_axis_event *event);
void (*cancel)(struct weston_pointer_grab *grab);
};
@@ -395,7 +401,8 @@
weston_pointer_destroy(struct weston_pointer *pointer);
void
weston_pointer_send_axis(struct weston_pointer *pointer,
- uint32_t time, uint32_t axis, wl_fixed_t value);
+ uint32_t time,
+ struct weston_pointer_axis_event *event);
void
weston_pointer_set_focus(struct weston_pointer *pointer,
struct weston_view *view,
@@ -1133,8 +1140,8 @@
notify_button(struct weston_seat *seat, uint32_t time, int32_t button,
enum wl_pointer_button_state state);
void
-notify_axis(struct weston_seat *seat, uint32_t time, uint32_t axis,
- wl_fixed_t value);
+notify_axis(struct weston_seat *seat, uint32_t time,
+ struct weston_pointer_axis_event *event);
void
notify_key(struct weston_seat *seat, uint32_t time, uint32_t key,
enum wl_keyboard_key_state state,
@@ -1258,8 +1265,9 @@
void *data);
typedef void (*weston_axis_binding_handler_t)(struct weston_pointer *pointer,
- uint32_t time, uint32_t axis,
- wl_fixed_t value, void *data);
+ uint32_t time,
+ struct weston_pointer_axis_event *event,
+ void *data);
struct weston_binding *
weston_compositor_add_axis_binding(struct weston_compositor *compositor,
uint32_t axis,
@@ -1305,7 +1313,7 @@
int
weston_compositor_run_axis_binding(struct weston_compositor *compositor,
struct weston_pointer *pointer, uint32_t time,
- uint32_t axis, int32_t value);
+ struct weston_pointer_axis_event *event);
int
weston_compositor_run_debug_binding(struct weston_compositor *compositor,
struct weston_keyboard *keyboard, uint32_t time,