summaryrefslogtreecommitdiff
path: root/src/wayland
diff options
context:
space:
mode:
Diffstat (limited to 'src/wayland')
-rw-r--r--src/wayland/meta-wayland-xdg-shell.c5
-rw-r--r--src/wayland/meta-window-wayland.c8
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