From d0b40ed4513a831c6fc0d5cb2751309b13bc8fae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Tue, 29 Apr 2014 14:47:46 -0700 Subject: [PATCH] desktop-shell: Reject window move in common_surface_move() We move the check for shsurf->grabbed from surface_move() and surface_touch_move() up top common_surface_move() --- desktop-shell/shell.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index 82d8166a..9340b4ac 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -1436,8 +1436,6 @@ surface_touch_move(struct shell_surface *shsurf, struct weston_seat *seat) if (shsurf->state.fullscreen) return 0; - if (shsurf->grabbed) - return 0; move = malloc(sizeof *move); if (!move) @@ -1522,8 +1520,6 @@ surface_move(struct shell_surface *shsurf, struct weston_seat *seat) if (!shsurf) return -1; - if (shsurf->grabbed) - return 0; if (shsurf->state.fullscreen || shsurf->state.maximized) return 0; @@ -1550,6 +1546,9 @@ common_surface_move(struct wl_resource *resource, struct shell_surface *shsurf = wl_resource_get_user_data(resource); struct weston_surface *surface; + if (shsurf->grabbed) + return; + if (seat->pointer && seat->pointer->focus && seat->pointer->button_count > 0 &&