From 8980f7c7d8e3ce97b77cd8b5edb3b82a830c18d5 Mon Sep 17 00:00:00 2001 From: Pekka Paalanen Date: Mon, 13 Feb 2012 11:04:30 +0200 Subject: [PATCH] shell: do not apply damage on window type set Setting a window type is a non-visual operation, it is not supposed to affect the rendering immediately. Therefore it does not need to apply surface damage. The proper surface damage is applied on an attach request following a window type change. Signed-off-by: Pekka Paalanen --- src/shell.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/shell.c b/src/shell.c index 869eb22..944df49 100644 --- a/src/shell.c +++ b/src/shell.c @@ -383,7 +383,6 @@ shell_surface_set_toplevel(struct wl_client *client, if (reset_shell_surface_type(surface)) return; - weston_surface_damage(surface->surface); surface->type = SHELL_SURFACE_TOPLEVEL; } @@ -408,7 +407,6 @@ shell_surface_set_transient(struct wl_client *client, es->geometry.y = pes->geometry.y + y; es->geometry.dirty = 1; - weston_surface_damage(es); shsurf->type = SHELL_SURFACE_TRANSIENT; } @@ -442,7 +440,6 @@ shell_surface_set_fullscreen(struct wl_client *client, es->geometry.y = (output->current->height - es->geometry.height) / 2; es->geometry.dirty = 1; es->fullscreen_output = output; - weston_surface_damage(es); shsurf->type = SHELL_SURFACE_FULLSCREEN; } @@ -557,9 +554,7 @@ shell_surface_set_popup(struct wl_client *client, int32_t x, int32_t y, uint32_t flags) { struct shell_surface *shsurf = resource->data; - struct weston_surface *es = shsurf->surface; - weston_surface_damage(es); shsurf->type = SHELL_SURFACE_POPUP; shsurf->parent = parent_resource->data; shsurf->popup.x = x; -- 2.7.4