From: Kristian Høgsberg Date: Wed, 5 Feb 2014 06:12:29 +0000 (-0800) Subject: input: Transform to surface coordinates outside resource for loop X-Git-Tag: upstream/0.1.8~415 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c988362a39f26cd0b3f08d86f21e758d7b762511;p=profile%2Fivi%2Fweston-ivi-shell.git input: Transform to surface coordinates outside resource for loop When we send the pointer motion event, the transform from compositor to surface coordinates doesn't depend on the resource. Transform the coordinates up front instead of everytime we send to a resource. --- diff --git a/src/input.c b/src/input.c index d0f7fdf..1000192 100644 --- a/src/input.c +++ b/src/input.c @@ -172,11 +172,11 @@ default_grab_pointer_motion(struct weston_pointer_grab *grab, uint32_t time, weston_pointer_move(pointer, x, y); + if (pointer->focus) + weston_view_from_global_fixed(pointer->focus, + pointer->x, pointer->y, &sx, &sy); resource_list = &pointer->focus_resource_list; wl_resource_for_each(resource, resource_list) { - weston_view_from_global_fixed(pointer->focus, - pointer->x, pointer->y, - &sx, &sy); wl_pointer_send_motion(resource, time, sx, sy); } }