From c2ad2be5c50ba10ea797f59e6611da87a71160aa Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 16 Oct 2013 09:34:18 +0100 Subject: [PATCH] block shape cutting during effects --- src/desksanity.c | 8 ++++++-- src/moveresize.c | 4 +++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/desksanity.c b/src/desksanity.c index 4e23443..188ad79 100644 --- a/src/desksanity.c +++ b/src/desksanity.c @@ -26,7 +26,11 @@ _ds_end(void *data EINA_UNUSED, Efx_Map_Data *emd EINA_UNUSED, Evas_Object *obj desk_hide = NULL; /* trigger desk flip end if there's a current desk set */ - if (desk_show) e_desk_flip_end(desk_show); + if (desk_show) + { + e_desk_flip_end(desk_show); + e_comp_shape_queue_block(e_comp_get(desk_show), 0); + } /* hide/delete current desk's mirror */ evas_object_hide(dm_show); @@ -86,7 +90,7 @@ _ds_show(E_Desk *desk, int dx, int dy) /* create mirror for current desk */ dm_show = dm_add(desk); evas_object_name_set(dm_show, "dm_show"); - + e_comp_shape_queue_block(e_comp_get(desk), 1); /* pick a random flip */ switch (rand() % DS_LAST) { diff --git a/src/moveresize.c b/src/moveresize.c index 1560868..a2a8e37 100644 --- a/src/moveresize.c +++ b/src/moveresize.c @@ -45,7 +45,7 @@ clear_all(void) static void fade_end(void *d EINA_UNUSED, Efx_Map_Data *emd EINA_UNUSED, Evas_Object *obj EINA_UNUSED) { - e_comp_shape_queue(client->comp); + e_comp_shape_queue_block(client->comp, 0); clear_all(); } @@ -212,6 +212,7 @@ move_begin(void *d EINA_UNUSED, E_Client *ec) { clear_all(); client = ec; + e_comp_shape_queue_block(ec->comp, 1); fade_setup(ec); @@ -261,6 +262,7 @@ resize_begin(void *d EINA_UNUSED, E_Client *ec) clear_all(); client = ec; + e_comp_shape_queue_block(ec->comp, 1); EINA_RECTANGLE_SET(&resize_start, ec->x, ec->y, ec->w, ec->h); fade_setup(ec);