diff options
Diffstat (limited to 'src/wayland')
-rw-r--r-- | src/wayland/meta-wayland-xdg-shell.c | 5 | ||||
-rw-r--r-- | src/wayland/meta-window-wayland.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/src/wayland/meta-wayland-xdg-shell.c b/src/wayland/meta-wayland-xdg-shell.c index 6d9a0d5cc..43b49231a 100644 --- a/src/wayland/meta-wayland-xdg-shell.c +++ b/src/wayland/meta-wayland-xdg-shell.c @@ -347,9 +347,10 @@ xdg_toplevel_set_maximized (struct wl_client *client, struct wl_resource *resource) { MetaWaylandSurface *surface = surface_from_xdg_toplevel_resource (resource); + MetaWindow *window = surface->window; - meta_window_force_placement (surface->window); - meta_window_maximize (surface->window, META_MAXIMIZE_BOTH); + meta_window_force_placement (window, TRUE); + meta_window_maximize (window, META_MAXIMIZE_BOTH); } static void diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c index 5e451ca58..4d9aadbbb 100644 --- a/src/wayland/meta-window-wayland.c +++ b/src/wayland/meta-window-wayland.c @@ -232,7 +232,11 @@ meta_window_wayland_move_resize_internal (MetaWindow *window, * it can be for maximized or fullscreen. */ - if (flags & META_MOVE_RESIZE_WAYLAND_RESIZE) + if (flags & META_MOVE_RESIZE_FORCE_MOVE) + { + can_move_now = TRUE; + } + else if (flags & META_MOVE_RESIZE_WAYLAND_RESIZE) { /* This is a call to wl_surface_commit(), ignore the constrained_rect and * update the real client size to match the buffer size. @@ -762,7 +766,7 @@ meta_window_place_with_placement_rule (MetaWindow *window, window->unconstrained_rect.width = placement_rule->width; window->unconstrained_rect.height = placement_rule->height; - meta_window_force_placement (window); + meta_window_force_placement (window, FALSE); } void |