xwm: Only call set_fullscreen if the window is mapped
authorKristian Høgsberg <krh@bitplanet.net>
Fri, 22 Feb 2013 01:18:37 +0000 (20:18 -0500)
committerKristian Høgsberg <krh@bitplanet.net>
Fri, 22 Feb 2013 01:18:37 +0000 (20:18 -0500)
If we get a fullscreen client message before we map the window, we don't
have a shell surface yet.  Just dont call set_fullscreen yet, and rely on
xserver_map_shell_surface() to fullscreen it when we map it.

src/xwayland/window-manager.c

index 9af2dd8..9c7638f 100644 (file)
@@ -1084,9 +1084,11 @@ weston_wm_window_handle_state(struct weston_wm_window *window,
                if (window->fullscreen) {
                        window->saved_width = window->width;
                        window->saved_height = window->height;
-                       shell_interface->set_fullscreen(window->shsurf,
-                                                       WL_SHELL_SURFACE_FULLSCREEN_METHOD_DEFAULT,
-                                                       0, NULL);
+
+                       if (window->shsurf)
+                               shell_interface->set_fullscreen(window->shsurf,
+                                                               WL_SHELL_SURFACE_FULLSCREEN_METHOD_DEFAULT,
+                                                               0, NULL);
                } else {
                        shell_interface->set_toplevel(window->shsurf);
                        window->width = window->saved_width;