no that made it worse.. evas renders everything. fix. must find it.

SVN revision: 18006
This commit is contained in:
Carsten Haitzler 2005-10-27 04:36:58 +00:00
parent bc6ba3ab34
commit c39bf3cc4e
1 changed files with 10 additions and 11 deletions

View File

@ -68,17 +68,15 @@ evas_obscured_clear(Evas *e)
static void static void
_evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active_objects, Evas_List **restack_objects, int restack) _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active_objects, Evas_List **restack_objects, int restack)
{ {
int is_active;
/* if (obj->cur.cache.clip.dirty) */ /* if (obj->cur.cache.clip.dirty) */
evas_object_clip_recalc(obj); evas_object_clip_recalc(obj);
/* build active object list */ /* build active object list */
if (evas_object_is_active(obj)) is_active = evas_object_is_active(obj);
if (is_active)
*active_objects = evas_list_append(*active_objects, obj); *active_objects = evas_list_append(*active_objects, obj);
if (restack) if ((obj->changed) || (restack))
{
obj->restack = 1;
obj->changed = 1;
}
if (obj->changed)
{ {
if (obj->smart.smart) if (obj->smart.smart)
{ {
@ -92,13 +90,14 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
obj2 = (Evas_Object *)l; obj2 = (Evas_Object *)l;
_evas_render_phase1_object_process(e, obj2, _evas_render_phase1_object_process(e, obj2,
active_objects, active_objects,
restack_objects, obj->restack); restack_objects,
obj->restack | restack);
} }
} }
else else
{ {
if ((obj->restack) && (!obj->clip.clipees) && if ((is_active) && (obj->restack | restack) &&
evas_object_is_active(obj)) (!obj->clip.clipees))
*restack_objects = evas_list_append(*restack_objects, obj); *restack_objects = evas_list_append(*restack_objects, obj);
else else
obj->func->render_pre(obj); obj->func->render_pre(obj);
@ -135,8 +134,8 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
obj->cur.cache.clip.h); obj->cur.cache.clip.h);
} }
} }
obj->restack = 0;
} }
obj->restack = 0;
} }
static void static void