touch: Make weston_touch_set_focus() take a touch instead of a seat
The other set_focus() functions take the relevant type instead of a seat
already, so this is consistent.
Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index 96aa8f3..5f54dea 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -543,7 +543,7 @@
weston_touch_start_grab(touch, &grab->grab);
if (shell->child.desktop_shell)
- weston_touch_set_focus(touch->seat,
+ weston_touch_set_focus(touch,
get_default_view(shell->grab_surface));
}
diff --git a/src/compositor.c b/src/compositor.c
index 1c06265..698ee52 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -1814,7 +1814,7 @@
wl_fixed_from_int(0),
wl_fixed_from_int(0));
if (seat->touch && seat->touch->focus == view)
- weston_touch_set_focus(seat, NULL);
+ weston_touch_set_focus(seat->touch, NULL);
}
}
diff --git a/src/compositor.h b/src/compositor.h
index 31ef5c7..20109d7 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -418,7 +418,7 @@
void
weston_touch_destroy(struct weston_touch *touch);
void
-weston_touch_set_focus(struct weston_seat *seat,
+weston_touch_set_focus(struct weston_touch *touch,
struct weston_view *view);
void
weston_touch_start_grab(struct weston_touch *device,
diff --git a/src/input.c b/src/input.c
index 142c670..6604c5d 100644
--- a/src/input.c
+++ b/src/input.c
@@ -108,7 +108,7 @@
container_of(listener, struct weston_touch,
focus_view_listener);
- weston_touch_set_focus(touch->seat, NULL);
+ weston_touch_set_focus(touch, NULL);
}
static void
@@ -118,7 +118,7 @@
container_of(listener, struct weston_touch,
focus_resource_listener);
- weston_touch_set_focus(touch->seat, NULL);
+ weston_touch_set_focus(touch, NULL);
}
static void
@@ -1449,25 +1449,25 @@
}
WL_EXPORT void
-weston_touch_set_focus(struct weston_seat *seat, struct weston_view *view)
+weston_touch_set_focus(struct weston_touch *touch, struct weston_view *view)
{
struct wl_list *focus_resource_list;
- focus_resource_list = &seat->touch->focus_resource_list;
+ focus_resource_list = &touch->focus_resource_list;
- if (view && seat->touch->focus &&
- seat->touch->focus->surface == view->surface) {
- seat->touch->focus = view;
+ if (view && touch->focus &&
+ touch->focus->surface == view->surface) {
+ touch->focus = view;
return;
}
- wl_list_remove(&seat->touch->focus_resource_listener.link);
- wl_list_init(&seat->touch->focus_resource_listener.link);
- wl_list_remove(&seat->touch->focus_view_listener.link);
- wl_list_init(&seat->touch->focus_view_listener.link);
+ wl_list_remove(&touch->focus_resource_listener.link);
+ wl_list_init(&touch->focus_resource_listener.link);
+ wl_list_remove(&touch->focus_view_listener.link);
+ wl_list_init(&touch->focus_view_listener.link);
if (!wl_list_empty(focus_resource_list)) {
- move_resources(&seat->touch->resource_list,
+ move_resources(&touch->resource_list,
focus_resource_list);
}
@@ -1475,19 +1475,19 @@
struct wl_client *surface_client;
if (!view->surface->resource) {
- seat->touch->focus = NULL;
+ touch->focus = NULL;
return;
}
surface_client = wl_resource_get_client(view->surface->resource);
move_resources_for_client(focus_resource_list,
- &seat->touch->resource_list,
+ &touch->resource_list,
surface_client);
wl_resource_add_destroy_listener(view->surface->resource,
- &seat->touch->focus_resource_listener);
- wl_signal_add(&view->destroy_signal, &seat->touch->focus_view_listener);
+ &touch->focus_resource_listener);
+ wl_signal_add(&view->destroy_signal, &touch->focus_view_listener);
}
- seat->touch->focus = view;
+ touch->focus = view;
}
/**
@@ -1525,7 +1525,7 @@
* until all touch points are up again. */
if (touch->num_tp == 1) {
ev = weston_compositor_pick_view(ec, x, y, &sx, &sy);
- weston_touch_set_focus(seat, ev);
+ weston_touch_set_focus(touch, ev);
} else if (touch->focus) {
ev = touch->focus;
weston_view_from_global_fixed(ev, x, y, &sx, &sy);
@@ -1574,7 +1574,7 @@
grab->interface->up(grab, time, touch_id);
if (touch->num_tp == 0)
- weston_touch_set_focus(seat, NULL);
+ weston_touch_set_focus(touch, NULL);
break;
}
}
@@ -2275,7 +2275,7 @@
{
seat->touch_device_count--;
if (seat->touch_device_count == 0) {
- weston_touch_set_focus(seat, NULL);
+ weston_touch_set_focus(seat->touch, NULL);
weston_touch_cancel_grab(seat->touch);
weston_touch_reset_state(seat->touch);
seat_send_updated_caps(seat);