compositor: Move fullscreen_output to shell_surface
diff --git a/src/compositor.c b/src/compositor.c
index a505f88..b8ef290 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -193,7 +193,6 @@
 	surface->image = EGL_NO_IMAGE_KHR;
 	surface->alpha = 255;
 
-	surface->fullscreen_output = NULL;
 	surface->buffer = NULL;
 	surface->output = NULL;
 
diff --git a/src/compositor.h b/src/compositor.h
index efd71e9..7dda311 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -285,7 +285,6 @@
 	 */
 	struct weston_output *output;
 
-	struct weston_output *fullscreen_output;
 	struct wl_list frame_callback_list;
 
 	EGLImageKHR image;
diff --git a/src/shell.c b/src/shell.c
index e4d4768..7925262 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -108,6 +108,7 @@
 		int32_t initial_up;
 	} popup;
 
+	struct weston_output *fullscreen_output;
 	struct weston_output *output;
 	struct wl_list link;
 };
@@ -355,7 +356,7 @@
 		weston_surface_set_position(surface->surface,
 					    surface->saved_x,
 					    surface->saved_y);
-		surface->surface->fullscreen_output = NULL;
+		surface->fullscreen_output = NULL;
 		break;
 	case SHELL_SURFACE_MAXIMIZED:
 		surface->output = get_default_output(surface->surface->compositor);
@@ -503,7 +504,7 @@
 
 	shsurf->saved_x = es->geometry.x;
 	shsurf->saved_y = es->geometry.y;
-	es->fullscreen_output = output;
+	shsurf->fullscreen_output = output;
 	shsurf->type = SHELL_SURFACE_FULLSCREEN;
 
 	wl_resource_post_event(resource,
@@ -1374,7 +1375,7 @@
 		break;
 	case SHELL_SURFACE_SCREENSAVER:
 	case SHELL_SURFACE_FULLSCREEN:
-		center_on_output(surface, surface->fullscreen_output);
+		center_on_output(surface, shsurf->fullscreen_output);
 		break;
 	case SHELL_SURFACE_MAXIMIZED:
 		/*use surface configure to set the geometry*/
@@ -1486,7 +1487,7 @@
 	switch (surface_type) {
 	case SHELL_SURFACE_SCREENSAVER:
 	case SHELL_SURFACE_FULLSCREEN:
-		center_on_output(surface, surface->fullscreen_output);
+		center_on_output(surface, shsurf->fullscreen_output);
 		break;
 	case SHELL_SURFACE_MAXIMIZED:
 		/*setting x, y and using configure to change that geometry*/
@@ -1612,7 +1613,7 @@
 
 	surface->type = SHELL_SURFACE_SCREENSAVER;
 
-	surface->surface->fullscreen_output = output;
+	surface->fullscreen_output = output;
 	surface->output = output;
 	wl_list_insert(shell->screensaver.surfaces.prev, &surface->link);
 }