eo: an object is invalidated if it is invalidated or if any parent is invalidated.

This commit is contained in:
Cedric BAIL 2018-05-23 19:35:03 -07:00
parent 384f30c8ec
commit 38d8b615c8
1 changed files with 3 additions and 1 deletions

View File

@ -811,12 +811,14 @@ _efl_object_finalized_get(const Eo *obj_id, Efl_Object_Data *pd EINA_UNUSED)
}
EOLIAN static Eina_Bool
_efl_object_invalidated_get(const Eo *obj_id, Efl_Object_Data *pd EINA_UNUSED)
_efl_object_invalidated_get(const Eo *obj_id, Efl_Object_Data *pd)
{
Eina_Bool invalidate;
EO_OBJ_POINTER_RETURN_VAL(obj_id, obj, EINA_TRUE);
invalidate = obj->invalidate || obj->is_invalidating;
EO_OBJ_DONE(obj_id);
if (!invalidate && pd && pd->parent)
return efl_invalidated_get(pd->parent);
return invalidate;
}