forked from enlightenment/efl
parent
208de4897a
commit
bc6ba3ab34
|
@ -296,14 +296,14 @@ int
|
|||
evas_object_is_active(Evas_Object *obj)
|
||||
{
|
||||
if (obj->smart.smart) return 0;
|
||||
if ((evas_object_is_in_output_rect(obj, 0, 0,
|
||||
if ((evas_object_is_visible(obj) ||
|
||||
evas_object_was_visible(obj)) &&
|
||||
(evas_object_is_in_output_rect(obj, 0, 0,
|
||||
obj->layer->evas->output.w,
|
||||
obj->layer->evas->output.h) ||
|
||||
evas_object_was_in_output_rect(obj, 0, 0,
|
||||
obj->layer->evas->output.w,
|
||||
obj->layer->evas->output.h)) &&
|
||||
(evas_object_is_visible(obj) ||
|
||||
evas_object_was_visible(obj)))
|
||||
obj->layer->evas->output.h)))
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -73,7 +73,6 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
|||
/* build active object list */
|
||||
if (evas_object_is_active(obj))
|
||||
*active_objects = evas_list_append(*active_objects, obj);
|
||||
/* something changed... maybe... */
|
||||
if (restack)
|
||||
{
|
||||
obj->restack = 1;
|
||||
|
@ -85,6 +84,7 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
|||
{
|
||||
Evas_Object_List *l;
|
||||
|
||||
obj->func->render_pre(obj);
|
||||
for (l = obj->smart.contained; l; l = l->next)
|
||||
{
|
||||
Evas_Object *obj2;
|
||||
|
@ -94,7 +94,6 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
|||
active_objects,
|
||||
restack_objects, obj->restack);
|
||||
}
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -105,7 +104,6 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
|||
obj->func->render_pre(obj);
|
||||
}
|
||||
}
|
||||
/* nothing changed at all */
|
||||
else
|
||||
{
|
||||
if ((!obj->clip.clipees) && (obj->delete_me == 0))
|
||||
|
@ -114,6 +112,7 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
|||
{
|
||||
Evas_Object_List *l;
|
||||
|
||||
obj->func->render_pre(obj);
|
||||
for (l = obj->smart.contained; l; l = l->next)
|
||||
{
|
||||
Evas_Object *obj2;
|
||||
|
@ -136,8 +135,8 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
|||
obj->cur.cache.clip.h);
|
||||
}
|
||||
}
|
||||
}
|
||||
obj->restack = 0;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -368,22 +367,24 @@ evas_render_updates(Evas *e)
|
|||
}
|
||||
/* if the object is flagged for deletion - note it */
|
||||
if (obj->delete_me == 2)
|
||||
{
|
||||
delete_objects = evas_list_append(delete_objects, obj);
|
||||
if (obj->delete_me) obj->delete_me ++;
|
||||
}
|
||||
else if (obj->delete_me != 0) obj->delete_me++;
|
||||
}
|
||||
/* free our obscuring object list */
|
||||
evas_list_free(obscuring_objects_orig);
|
||||
/* free our active object list */
|
||||
evas_list_free(active_objects);
|
||||
/* delete all objects flagged for deletion now */
|
||||
while (delete_objects)
|
||||
{
|
||||
Evas_Object *obj;
|
||||
|
||||
obj = (Evas_Object *)(delete_objects->data);
|
||||
delete_objects = evas_list_remove(delete_objects, obj);
|
||||
delete_objects = evas_list_remove_list(delete_objects, delete_objects);
|
||||
evas_object_free(obj, 1);
|
||||
}
|
||||
/* free our obscuring object list */
|
||||
evas_list_free(obscuring_objects_orig);
|
||||
/* free our active object list */
|
||||
evas_list_free(active_objects);
|
||||
e->changed = 0;
|
||||
e->viewport.changed = 0;
|
||||
e->output.changed = 0;
|
||||
|
|
|
@ -78,6 +78,7 @@ evas_object_raise(Evas_Object *obj)
|
|||
}
|
||||
obj->restack = 1;
|
||||
evas_object_change(obj);
|
||||
evas_object_inform_call_restack(obj);
|
||||
if (obj->layer->evas->events_frozen <= 0)
|
||||
{
|
||||
if (!evas_event_passes_through(obj))
|
||||
|
@ -96,7 +97,6 @@ evas_object_raise(Evas_Object *obj)
|
|||
}
|
||||
}
|
||||
}
|
||||
evas_object_inform_call_restack(obj);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -137,6 +137,7 @@ evas_object_lower(Evas_Object *obj)
|
|||
}
|
||||
obj->restack = 1;
|
||||
evas_object_change(obj);
|
||||
evas_object_inform_call_restack(obj);
|
||||
if (obj->layer->evas->events_frozen <= 0)
|
||||
{
|
||||
if (!evas_event_passes_through(obj))
|
||||
|
@ -155,7 +156,6 @@ evas_object_lower(Evas_Object *obj)
|
|||
}
|
||||
}
|
||||
}
|
||||
evas_object_inform_call_restack(obj);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -213,6 +213,7 @@ evas_object_stack_above(Evas_Object *obj, Evas_Object *above)
|
|||
}
|
||||
obj->restack = 1;
|
||||
evas_object_change(obj);
|
||||
evas_object_inform_call_restack(obj);
|
||||
if (obj->layer->evas->events_frozen <= 0)
|
||||
{
|
||||
if (!evas_event_passes_through(obj))
|
||||
|
@ -231,7 +232,6 @@ evas_object_stack_above(Evas_Object *obj, Evas_Object *above)
|
|||
}
|
||||
}
|
||||
}
|
||||
evas_object_inform_call_restack(obj);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -289,6 +289,7 @@ evas_object_stack_below(Evas_Object *obj, Evas_Object *below)
|
|||
}
|
||||
obj->restack = 1;
|
||||
evas_object_change(obj);
|
||||
evas_object_inform_call_restack(obj);
|
||||
if (obj->layer->evas->events_frozen <= 0)
|
||||
{
|
||||
if (!evas_event_passes_through(obj))
|
||||
|
@ -307,7 +308,6 @@ evas_object_stack_below(Evas_Object *obj, Evas_Object *below)
|
|||
}
|
||||
}
|
||||
}
|
||||
evas_object_inform_call_restack(obj);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue