diff --git a/src/modules/ecore_evas/engines/x/ecore_evas_x.c b/src/modules/ecore_evas/engines/x/ecore_evas_x.c index 627dd15167..69e0709a30 100644 --- a/src/modules/ecore_evas/engines/x/ecore_evas_x.c +++ b/src/modules/ecore_evas/engines/x/ecore_evas_x.c @@ -2284,10 +2284,15 @@ _ecore_evas_x_alpha_set(Ecore_Evas *ee, int alpha) { if (ee->in_async_render) { - ee->delayed.alpha = alpha; - ee->delayed.alpha_changed = EINA_TRUE; - return; + if (ee->visible) + { + ee->delayed.alpha = alpha; + ee->delayed.alpha_changed = EINA_TRUE; + return; + } } + if (ee->in_async_render) + evas_sync(ee->evas); _alpha_do(ee, alpha); } else if (!strcmp(ee->driver, "opengl_x11"))