forked from enlightenment/efl
parent
208de4897a
commit
bc6ba3ab34
|
@ -296,14 +296,14 @@ int
|
||||||
evas_object_is_active(Evas_Object *obj)
|
evas_object_is_active(Evas_Object *obj)
|
||||||
{
|
{
|
||||||
if (obj->smart.smart) return 0;
|
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.w,
|
||||||
obj->layer->evas->output.h) ||
|
obj->layer->evas->output.h) ||
|
||||||
evas_object_was_in_output_rect(obj, 0, 0,
|
evas_object_was_in_output_rect(obj, 0, 0,
|
||||||
obj->layer->evas->output.w,
|
obj->layer->evas->output.w,
|
||||||
obj->layer->evas->output.h)) &&
|
obj->layer->evas->output.h)))
|
||||||
(evas_object_is_visible(obj) ||
|
|
||||||
evas_object_was_visible(obj)))
|
|
||||||
return 1;
|
return 1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,7 +73,6 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
||||||
/* build active object list */
|
/* build active object list */
|
||||||
if (evas_object_is_active(obj))
|
if (evas_object_is_active(obj))
|
||||||
*active_objects = evas_list_append(*active_objects, obj);
|
*active_objects = evas_list_append(*active_objects, obj);
|
||||||
/* something changed... maybe... */
|
|
||||||
if (restack)
|
if (restack)
|
||||||
{
|
{
|
||||||
obj->restack = 1;
|
obj->restack = 1;
|
||||||
|
@ -85,6 +84,7 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
||||||
{
|
{
|
||||||
Evas_Object_List *l;
|
Evas_Object_List *l;
|
||||||
|
|
||||||
|
obj->func->render_pre(obj);
|
||||||
for (l = obj->smart.contained; l; l = l->next)
|
for (l = obj->smart.contained; l; l = l->next)
|
||||||
{
|
{
|
||||||
Evas_Object *obj2;
|
Evas_Object *obj2;
|
||||||
|
@ -94,7 +94,6 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
||||||
active_objects,
|
active_objects,
|
||||||
restack_objects, obj->restack);
|
restack_objects, obj->restack);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -105,7 +104,6 @@ _evas_render_phase1_object_process(Evas *e, Evas_Object *obj, Evas_List **active
|
||||||
obj->func->render_pre(obj);
|
obj->func->render_pre(obj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* nothing changed at all */
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ((!obj->clip.clipees) && (obj->delete_me == 0))
|
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;
|
Evas_Object_List *l;
|
||||||
|
|
||||||
|
obj->func->render_pre(obj);
|
||||||
for (l = obj->smart.contained; l; l = l->next)
|
for (l = obj->smart.contained; l; l = l->next)
|
||||||
{
|
{
|
||||||
Evas_Object *obj2;
|
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->cur.cache.clip.h);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
obj->restack = 0;
|
||||||
}
|
}
|
||||||
obj->restack = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -368,22 +367,24 @@ evas_render_updates(Evas *e)
|
||||||
}
|
}
|
||||||
/* if the object is flagged for deletion - note it */
|
/* if the object is flagged for deletion - note it */
|
||||||
if (obj->delete_me == 2)
|
if (obj->delete_me == 2)
|
||||||
delete_objects = evas_list_append(delete_objects, obj);
|
{
|
||||||
if (obj->delete_me) obj->delete_me ++;
|
delete_objects = evas_list_append(delete_objects, obj);
|
||||||
|
}
|
||||||
|
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 */
|
/* delete all objects flagged for deletion now */
|
||||||
while (delete_objects)
|
while (delete_objects)
|
||||||
{
|
{
|
||||||
Evas_Object *obj;
|
Evas_Object *obj;
|
||||||
|
|
||||||
obj = (Evas_Object *)(delete_objects->data);
|
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);
|
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->changed = 0;
|
||||||
e->viewport.changed = 0;
|
e->viewport.changed = 0;
|
||||||
e->output.changed = 0;
|
e->output.changed = 0;
|
||||||
|
|
|
@ -78,6 +78,7 @@ evas_object_raise(Evas_Object *obj)
|
||||||
}
|
}
|
||||||
obj->restack = 1;
|
obj->restack = 1;
|
||||||
evas_object_change(obj);
|
evas_object_change(obj);
|
||||||
|
evas_object_inform_call_restack(obj);
|
||||||
if (obj->layer->evas->events_frozen <= 0)
|
if (obj->layer->evas->events_frozen <= 0)
|
||||||
{
|
{
|
||||||
if (!evas_event_passes_through(obj))
|
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;
|
obj->restack = 1;
|
||||||
evas_object_change(obj);
|
evas_object_change(obj);
|
||||||
|
evas_object_inform_call_restack(obj);
|
||||||
if (obj->layer->evas->events_frozen <= 0)
|
if (obj->layer->evas->events_frozen <= 0)
|
||||||
{
|
{
|
||||||
if (!evas_event_passes_through(obj))
|
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;
|
obj->restack = 1;
|
||||||
evas_object_change(obj);
|
evas_object_change(obj);
|
||||||
|
evas_object_inform_call_restack(obj);
|
||||||
if (obj->layer->evas->events_frozen <= 0)
|
if (obj->layer->evas->events_frozen <= 0)
|
||||||
{
|
{
|
||||||
if (!evas_event_passes_through(obj))
|
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;
|
obj->restack = 1;
|
||||||
evas_object_change(obj);
|
evas_object_change(obj);
|
||||||
|
evas_object_inform_call_restack(obj);
|
||||||
if (obj->layer->evas->events_frozen <= 0)
|
if (obj->layer->evas->events_frozen <= 0)
|
||||||
{
|
{
|
||||||
if (!evas_event_passes_through(obj))
|
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