wayland: apply size hints after placing the window

Otherwise the window will be shown initially in the wrong position then
moved quickly as soon as it's made visible, which is confusing.

https://bugzilla.gnome.org/show_bug.cgi?id=772729
This commit is contained in:
Olivier Fourdan 2016-10-11 15:20:30 +02:00
parent 9de6de5802
commit d7f61e48ac

View File

@ -617,6 +617,12 @@ xdg_toplevel_role_commit (MetaWaylandSurfaceRole *surface_role,
return; return;
} }
window_geometry = meta_wayland_xdg_surface_get_window_geometry (xdg_surface);
meta_window_wayland_move_resize (window,
&xdg_surface_priv->acked_configure_serial,
window_geometry,
pending->dx, pending->dy);
/* When we get to this point, we ought to have valid size hints */ /* When we get to this point, we ought to have valid size hints */
if (pending->has_new_min_size || pending->has_new_max_size) if (pending->has_new_min_size || pending->has_new_max_size)
{ {
@ -639,11 +645,6 @@ xdg_toplevel_role_commit (MetaWaylandSurfaceRole *surface_role,
} }
} }
window_geometry = meta_wayland_xdg_surface_get_window_geometry (xdg_surface);
meta_window_wayland_move_resize (window,
&xdg_surface_priv->acked_configure_serial,
window_geometry,
pending->dx, pending->dy);
xdg_surface_priv->acked_configure_serial.set = FALSE; xdg_surface_priv->acked_configure_serial.set = FALSE;
} }