Remove width_mm from wlr_touch events

This commit is contained in:
Drew DeVault 2018-03-28 11:04:40 -04:00
parent a35a5786b0
commit 324b9d910d
10 changed files with 37 additions and 46 deletions

View file

@ -217,8 +217,8 @@ static void handle_touch_down(struct wl_listener *listener, void *data) {
struct wlr_event_touch_down *event = data;
struct touch_point *point = calloc(1, sizeof(struct touch_point));
point->touch_id = event->touch_id;
point->x = event->x_mm / event->width_mm;
point->y = event->y_mm / event->height_mm;
point->x = event->x;
point->y = event->y;
wl_list_insert(&sample->touch_points, &point->link);
warp_to_touch(sample, event->device);
@ -232,8 +232,8 @@ static void handle_touch_motion(struct wl_listener *listener, void *data) {
struct touch_point *point;
wl_list_for_each(point, &sample->touch_points, link) {
if (point->touch_id == event->touch_id) {
point->x = event->x_mm / event->width_mm;
point->y = event->y_mm / event->height_mm;
point->x = event->x;
point->y = event->y;
break;
}
}

View file

@ -167,8 +167,8 @@ static void touch_down_notify(struct wl_listener *listener, void *data) {
struct wlr_event_touch_down *event = data;
struct touch_state *tstate = wl_container_of(listener, tstate, down);
if (tstate->compositor->touch_down_cb) {
tstate->compositor->touch_down_cb(tstate, event->touch_id,
event->x_mm, event->y_mm, event->width_mm, event->height_mm);
tstate->compositor->touch_down_cb(tstate,
event->touch_id, event->x, event->y);
}
}
@ -176,8 +176,8 @@ static void touch_motion_notify(struct wl_listener *listener, void *data) {
struct wlr_event_touch_motion *event = data;
struct touch_state *tstate = wl_container_of(listener, tstate, motion);
if (tstate->compositor->touch_motion_cb) {
tstate->compositor->touch_motion_cb(tstate, event->touch_id,
event->x_mm, event->y_mm, event->width_mm, event->height_mm);
tstate->compositor->touch_motion_cb(tstate,
event->touch_id, event->x, event->y);
}
}

View file

@ -102,10 +102,10 @@ struct compositor_state {
enum wlr_axis_source source,
enum wlr_axis_orientation orientation,
double delta);
void (*touch_down_cb)(struct touch_state *s, int32_t touch_id,
double x, double y, double width, double height);
void (*touch_motion_cb)(struct touch_state *s, int32_t touch_id,
double x, double y, double width, double height);
void (*touch_down_cb)(struct touch_state *s,
int32_t touch_id, double x, double y);
void (*touch_motion_cb)(struct touch_state *s,
int32_t touch_id, double x, double y);
void (*touch_up_cb)(struct touch_state *s, int32_t touch_id);
void (*touch_cancel_cb)(struct touch_state *s, int32_t touch_id);
void (*tool_axis_cb)(struct tablet_tool_state *s,

View file

@ -60,13 +60,13 @@ static void handle_output_frame(struct output_state *output, struct timespec *ts
wlr_output_swap_buffers(wlr_output, NULL, NULL);
}
static void handle_touch_down(struct touch_state *tstate, int32_t touch_id,
double x, double y, double width, double height) {
static void handle_touch_down(struct touch_state *tstate,
int32_t touch_id, double x, double y) {
struct sample_state *sample = tstate->compositor->data;
struct touch_point *point = calloc(1, sizeof(struct touch_point));
point->touch_id = touch_id;
point->x = x / width;
point->y = y / height;
point->x = x;
point->y = y;
wl_list_insert(&sample->touch_points, &point->link);
}
@ -81,14 +81,14 @@ static void handle_touch_up(struct touch_state *tstate, int32_t touch_id) {
}
}
static void handle_touch_motion(struct touch_state *tstate, int32_t touch_id,
double x, double y, double width, double height) {
static void handle_touch_motion(struct touch_state *tstate,
int32_t touch_id, double x, double y) {
struct sample_state *sample = tstate->compositor->data;
struct touch_point *point;
wl_list_for_each(point, &sample->touch_points, link) {
if (point->touch_id == touch_id) {
point->x = x / width;
point->y = y / height;
point->x = x;
point->y = y;
break;
}
}