From: Juan Zhao <juan.j.z...@linux.intel.com>

---
 src/shell.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/src/shell.c b/src/shell.c
index 1d95313..9ef666f 100644
--- a/src/shell.c
+++ b/src/shell.c
@@ -71,7 +71,6 @@ struct wl_shell {
        } screensaver;
 };
 
-/*FIXME:Using bit flag for the type due to some surface may be both toplevel 
and fullscreen*/
 enum shell_surface_type {
        SHELL_SURFACE_NONE,
 
@@ -300,7 +299,9 @@ weston_surface_resize(struct shell_surface *shsurf,
 {
        struct weston_resize_grab *resize;
 
-       /* FIXME: Reject if fullscreen */
+       /* FIXME: Reject if maximised */
+       if (shsurf->type == SHELL_SURFACE_FULLSCREEN)
+               return;
 
        if (edges == 0 || edges > 15 ||
            (edges & 3) == 3 || (edges & 12) == 12)
@@ -332,7 +333,9 @@ shell_surface_resize(struct wl_client *client, struct 
wl_resource *resource,
        struct weston_input_device *wd = input_resource->data;
        struct shell_surface *shsurf = resource->data;
 
-       /* FIXME: Reject if fullscreen */
+       /* FIXME: Reject if maximised */
+       if (shsurf->type == SHELL_SURFACE_FULLSCREEN)
+               return;
 
        if (wd->input_device.button_count == 0 ||
            wd->input_device.grab_time != time ||
@@ -1311,7 +1314,6 @@ weston_surface_set_fullscreen(struct weston_surface 
*surface)
        struct shell_surface *shsurf;
 
        center_on_output(surface, output);
-       surface->output = output;
 
        switch(surface->fs_support.fs_method) {
        case WESTON_SURFACE_FULLSCREEN_DEFAULT:
@@ -1330,7 +1332,6 @@ weston_surface_set_fullscreen(struct weston_surface 
*surface)
                }
                weston_surface_set_position(surface, output->x, output->y);
                weston_surface_damage(surface);
-               weston_output_damage(output);
                break;
        case WESTON_SURFACE_FULLSCREEN_DRIVER:
                break;
@@ -1582,7 +1583,6 @@ configure(struct weston_shell *base, struct 
weston_surface *surface,
                break;
        }
 
-       /*  XXX: would a fullscreen surface need the same handling? */
        if (do_configure) {
                weston_surface_configure(surface, x, y, width, height);
                weston_surface_assign_output(surface);
-- 
1.7.5.4

_______________________________________________
wayland-devel mailing list
wayland-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/wayland-devel

Reply via email to