shell: Set state_changed when we make a surface transient
If we don't mark the state as changed, we don't copy over next_state to
state and we fail to treat the surface as a transient. In particular,
we give it a random intial position instead of mapping it at the given
parent relative position.
https://bugs.freedesktop.org/show_bug.cgi?id=72532
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c
index 714881b..7ee462f 100644
--- a/desktop-shell/shell.c
+++ b/desktop-shell/shell.c
@@ -2158,6 +2158,7 @@
shsurf->transient.flags = flags;
shsurf->next_state.relative = true;
+ shsurf->state_changed = true;
shsurf->type = SHELL_SURFACE_TOPLEVEL;
/* The layer_link is updated in set_surface_type(),