Eina_Bool running;
Eina_Bool wait_for_buffer;
+ Eina_Bool norender;
} Rotation_Effect;
typedef struct _Rotation_Zone
/* now, we're going to start rotation effect.
* so, unblock updating canvas (compositing mode)
*/
- e_comp_canvas_norender_pop();
+ if (effect->norender)
+ {
+ e_comp_canvas_norender_pop();
+ effect->norender = EINA_FALSE;
+ }
EFFINF("Rotation Effect Start", NULL, NULL);
* could be outputted to the screen before starting rotation effect.
* it will be unset when the rotation effect starts.
*/
- e_comp_canvas_norender_push();
+ if (!effect->norender)
+ {
+ e_comp_canvas_norender_push();
+ effect->norender = EINA_TRUE;
+ }
}
static void
if (effect->running) return ECORE_CALLBACK_PASS_ON;
if (effect->targets) _rotation_effect_cancel_send(zone);
+
+ if (effect->norender)
+ {
+ e_comp_canvas_norender_pop();
+ effect->norender = EINA_FALSE;
+ }
+
_rotation_effect_clear(effect);
return ECORE_CALLBACK_PASS_ON;