shell: Don’t change popups’ window types until the next configure event

This standardises their behaviour with that of the other window types,
where the type change is only committed on configure.
diff --git a/src/shell.c b/src/shell.c
index e9d733c..2bfc463 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -2192,13 +2192,14 @@
 {
 	assert(parent != NULL);
 
-	shsurf->type = SHELL_SURFACE_POPUP;
 	shsurf->popup.shseat = get_shell_seat(seat);
 	shsurf->popup.serial = serial;
 	shsurf->popup.x = x;
 	shsurf->popup.y = y;
 
 	shell_surface_set_parent(shsurf, parent);
+
+	shsurf->next_type = SHELL_SURFACE_POPUP;
 }
 
 static void