if (!_e_comp_object_animating_end(cw)) return;
if (cw->animating) return;
/* hide only after animation finishes to guarantee a full run of the animation */
- if (cw->defer_hide && ((!strcmp(emission, "e,action,hide,done")) || (!strcmp(emission, "e,action,done"))))
- evas_object_hide(cw->smart_obj);
+ if (!cw->defer_hide) return;
+ if ((!strcmp(emission, "e,action,hide,done")) ||
+ (!strcmp(emission, "e,action,done")) ||
+ ((cw->ec->iconic) && (!strcmp(emission, "e,action,show,done"))))
+ {
+ ELOGF("COMP", "defer hide emission:%s", cw->ec, emission);
+ evas_object_hide(cw->smart_obj);
+ }
}
/* run a visibility compositor effect if available, return false if object is dead */