@ -1261,6 +1261,7 @@ set_surface_type(struct shell_surface *shsurf)
shsurf - > saved_x = surface - > geometry . x ;
shsurf - > saved_x = surface - > geometry . x ;
shsurf - > saved_y = surface - > geometry . y ;
shsurf - > saved_y = surface - > geometry . y ;
shsurf - > saved_position_valid = true ;
shsurf - > saved_position_valid = true ;
center_on_output ( surface , shsurf - > fullscreen_output ) ;
if ( ! wl_list_empty ( & shsurf - > rotation . transform . link ) ) {
if ( ! wl_list_empty ( & shsurf - > rotation . transform . link ) ) {
wl_list_remove ( & shsurf - > rotation . transform . link ) ;
wl_list_remove ( & shsurf - > rotation . transform . link ) ;
@ -1401,8 +1402,6 @@ shell_configure_fullscreen(struct shell_surface *shsurf)
struct weston_matrix * matrix ;
struct weston_matrix * matrix ;
float scale ;
float scale ;
center_on_output ( surface , output ) ;
if ( ! shsurf - > fullscreen . black_surface )
if ( ! shsurf - > fullscreen . black_surface )
shsurf - > fullscreen . black_surface =
shsurf - > fullscreen . black_surface =
create_black_surface ( surface - > compositor ,
create_black_surface ( surface - > compositor ,
@ -2543,6 +2542,7 @@ map(struct desktop_shell *shell, struct weston_surface *surface,
10 + random ( ) % 400 ) ;
10 + random ( ) % 400 ) ;
break ;
break ;
case SHELL_SURFACE_FULLSCREEN :
case SHELL_SURFACE_FULLSCREEN :
center_on_output ( surface , shsurf - > fullscreen_output ) ;
shell_map_fullscreen ( shsurf ) ;
shell_map_fullscreen ( shsurf ) ;
break ;
break ;
case SHELL_SURFACE_MAXIMIZED :
case SHELL_SURFACE_MAXIMIZED :