From: Bastian Farkas <bfar...@de.adit-jv.com> Function names and structs changed.
Signed-off-by: Bastian Farkas <bfar...@de.adit-jv.com> --- desktop-shell/shell.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index 54ee4a2..1dae736 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -436,7 +436,7 @@ shell_tablet_tool_grab_start(struct shell_tablet_tool_grab *grab, struct desktop_shell *shell = shsurf->shell; if (tool->seat->pointer_state) - popup_grab_end(tool->seat->pointer_state); + weston_pointer_end_grab(tool->seat->pointer_state); grab->grab.interface = interface; grab->shsurf = shsurf; @@ -1663,15 +1663,17 @@ tablet_tool_move_grab_motion(struct weston_tablet_tool_grab *grab, uint32_t time struct weston_tablet_tool_move_grab *move = (struct weston_tablet_tool_move_grab *)grab; struct shell_surface *shsurf = move->base.shsurf; + struct weston_surface *es; if (!shsurf) return; + es = weston_desktop_surface_get_surface(shsurf->desktop_surface); weston_tablet_tool_cursor_move(grab->tool, x, y); weston_view_set_position(shsurf->view, wl_fixed_to_double(x + move->dx), wl_fixed_to_double(y + move->dy)); - weston_compositor_schedule_repaint(shsurf->surface->compositor); + weston_compositor_schedule_repaint(es->compositor); } static void @@ -2013,15 +2015,19 @@ handle_tablet_tool_focus(struct wl_listener *listener, void *data) { struct weston_tablet_tool *tool = data; struct weston_view *view = tool->focus; - struct weston_compositor *compositor; - uint32_t serial; + struct shell_surface *shsurf; + struct weston_desktop_client *client; if (!view) return; - compositor = view->surface->compositor; - serial = wl_display_next_serial(compositor->wl_display); - ping_handler(view->surface, serial); + shsurf = get_shell_surface(view->surface); + if (!shsurf) + return; + + client = weston_desktop_surface_get_client(shsurf->desktop_surface); + + weston_desktop_client_ping(client); } static void @@ -2875,9 +2881,9 @@ desktop_surface_move(struct weston_desktop_surface *desktop_surface, wl_list_for_each(tool, &seat->tablet_tool_list, link) { if (tool->focus && tool->grab_serial == serial) { - surface = weston_surface_get_main_surface( + focus = weston_surface_get_main_surface( tool->focus->surface); - if (surface == shsurf->surface && + if (focus == surface && surface_tablet_tool_move(shsurf, tool) < 0) wl_resource_post_no_memory(resource); } @@ -4041,7 +4047,9 @@ tablet_tool_activate_binding(struct weston_tablet_tool *tool, if (tool->focus == NULL) return; - activate_binding(tool->seat, data, tool->focus); + activate_binding(tool->seat, data, tool->focus, + WESTON_ACTIVATE_FLAG_CLICKED | + WESTON_ACTIVATE_FLAG_CONFIGURE); } static void -- 2.7.4 _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/wayland-devel