desktop-shell: Make surface_rotate take a pointer instead of a seat

It doesn't actually need the seat and we have to validate that the seat
has a pointer before making the call, so it's safer just to pass
the validated pointer.

Reviewed-by: Jonas Ådahl <jadahl@gmail.com>
Signed-off-by: Derek Foreman <derekf@osg.samsung.com>
dev
Derek Foreman 10 years ago committed by Bryce Harrington
parent 794fa0e031
commit 74de4693b7
  1. 14
      desktop-shell/shell.c

@ -251,7 +251,7 @@ static struct desktop_shell *
shell_surface_get_shell(struct shell_surface *shsurf); shell_surface_get_shell(struct shell_surface *shsurf);
static void static void
surface_rotate(struct shell_surface *surface, struct weston_seat *seat); surface_rotate(struct shell_surface *surface, struct weston_pointer *pointer);
static void static void
shell_fade_startup(struct desktop_shell *shell); shell_fade_startup(struct desktop_shell *shell);
@ -2049,7 +2049,7 @@ busy_cursor_grab_button(struct weston_pointer_grab *base,
surface_move(shsurf, pointer, false); surface_move(shsurf, pointer, false);
} else if (shsurf && button == BTN_RIGHT && state) { } else if (shsurf && button == BTN_RIGHT && state) {
activate(shsurf->shell, shsurf->surface, seat, true); activate(shsurf->shell, shsurf->surface, seat, true);
surface_rotate(shsurf, seat); surface_rotate(shsurf, pointer);
} }
} }
@ -4932,7 +4932,7 @@ static const struct weston_pointer_grab_interface rotate_grab_interface = {
}; };
static void static void
surface_rotate(struct shell_surface *surface, struct weston_seat *seat) surface_rotate(struct shell_surface *surface, struct weston_pointer *pointer)
{ {
struct rotate_grab *rotate; struct rotate_grab *rotate;
float dx, dy; float dx, dy;
@ -4947,8 +4947,8 @@ surface_rotate(struct shell_surface *surface, struct weston_seat *seat)
surface->surface->height * 0.5f, surface->surface->height * 0.5f,
&rotate->center.x, &rotate->center.y); &rotate->center.x, &rotate->center.y);
dx = wl_fixed_to_double(seat->pointer->x) - rotate->center.x; dx = wl_fixed_to_double(pointer->x) - rotate->center.x;
dy = wl_fixed_to_double(seat->pointer->y) - rotate->center.y; dy = wl_fixed_to_double(pointer->y) - rotate->center.y;
r = sqrtf(dx * dx + dy * dy); r = sqrtf(dx * dx + dy * dy);
if (r > 20.0f) { if (r > 20.0f) {
struct weston_matrix inverse; struct weston_matrix inverse;
@ -4965,7 +4965,7 @@ surface_rotate(struct shell_surface *surface, struct weston_seat *seat)
} }
shell_grab_start(&rotate->base, &rotate_grab_interface, surface, shell_grab_start(&rotate->base, &rotate_grab_interface, surface,
seat->pointer, DESKTOP_SHELL_CURSOR_ARROW); pointer, DESKTOP_SHELL_CURSOR_ARROW);
} }
static void static void
@ -4990,7 +4990,7 @@ rotate_binding(struct weston_pointer *pointer, uint32_t time, uint32_t button,
surface->state.maximized) surface->state.maximized)
return; return;
surface_rotate(surface, pointer->seat); surface_rotate(surface, pointer);
} }
/* Move all fullscreen layers down to the current workspace and hide their /* Move all fullscreen layers down to the current workspace and hide their

Loading…
Cancel
Save