forked from enlightenment/efl
parent
58827ba3b6
commit
a3d66cfed3
|
@ -908,6 +908,7 @@
|
||||||
2012-07-24 Ingvaldur Sigurjonsson
|
2012-07-24 Ingvaldur Sigurjonsson
|
||||||
|
|
||||||
* Fix typoe in docs
|
* Fix typoe in docs
|
||||||
|
<<<<<<< .mine
|
||||||
|
|
||||||
2012-07-24 Hermet (ChunEon Park)
|
2012-07-24 Hermet (ChunEon Park)
|
||||||
|
|
||||||
|
@ -917,3 +918,10 @@
|
||||||
2012-07-24 Cedric Bail
|
2012-07-24 Cedric Bail
|
||||||
|
|
||||||
* Handle Proxy with the right context.
|
* Handle Proxy with the right context.
|
||||||
|
|
||||||
|
2012-07-24 Carsten Haitzler (The Rasterman)
|
||||||
|
|
||||||
|
* Fix long-standing bug when changing layer of a smart object,
|
||||||
|
its children dont change their layer value and pointer with it, thus
|
||||||
|
getting layer from them get you the wrong one.
|
||||||
|
|
||||||
|
|
|
@ -133,6 +133,31 @@ evas_layer_del(Evas_Layer *lay)
|
||||||
e->layers = (Evas_Layer *)eina_inlist_remove(EINA_INLIST_GET(e->layers), EINA_INLIST_GET(lay));
|
e->layers = (Evas_Layer *)eina_inlist_remove(EINA_INLIST_GET(e->layers), EINA_INLIST_GET(lay));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
_evas_object_layer_set_child(Evas_Object *obj, Evas_Object *par, short l)
|
||||||
|
{
|
||||||
|
Evas *e;
|
||||||
|
|
||||||
|
if (obj->delete_me) return;
|
||||||
|
if (obj->cur.layer == l) return;
|
||||||
|
e = obj->layer->evas;
|
||||||
|
evas_object_release(obj, 1);
|
||||||
|
obj->cur.layer = l;
|
||||||
|
obj->layer = par->layer;
|
||||||
|
obj->layer->usage++;
|
||||||
|
if (obj->smart.smart)
|
||||||
|
{
|
||||||
|
Eina_Inlist *contained;
|
||||||
|
Evas_Object *member;
|
||||||
|
|
||||||
|
contained = (Eina_Inlist *)evas_object_smart_members_get_direct(obj);
|
||||||
|
EINA_INLIST_FOREACH(contained, member)
|
||||||
|
{
|
||||||
|
_evas_object_layer_set_child(member, obj, l);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* public functions */
|
/* public functions */
|
||||||
|
|
||||||
EAPI void
|
EAPI void
|
||||||
|
@ -176,6 +201,17 @@ evas_object_layer_set(Evas_Object *obj, short l)
|
||||||
obj->layer->evas->last_timestamp,
|
obj->layer->evas->last_timestamp,
|
||||||
NULL);
|
NULL);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Eina_Inlist *contained;
|
||||||
|
Evas_Object *member;
|
||||||
|
|
||||||
|
contained = (Eina_Inlist *)evas_object_smart_members_get_direct(obj);
|
||||||
|
EINA_INLIST_FOREACH(contained, member)
|
||||||
|
{
|
||||||
|
_evas_object_layer_set_child(member, obj, l);
|
||||||
|
}
|
||||||
|
}
|
||||||
evas_object_inform_call_restack(obj);
|
evas_object_inform_call_restack(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue