From 7777b5d738dfe6010251bf16adeae8c5218400f9 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 25 Apr 2013 11:21:18 +0100 Subject: [PATCH] fix stacking list order of comp objects under the layout --- src/bin/e_comp.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/bin/e_comp.c b/src/bin/e_comp.c index 3e722d0db..bb57f4b4a 100644 --- a/src/bin/e_comp.c +++ b/src/bin/e_comp.c @@ -5377,7 +5377,19 @@ e_comp_canvas_layer_set(Evas_Object *obj, E_Comp_Canvas_Layer comp_layer, E_Laye cw = e_comp_object_add(c, obj, evas_object_data_get(obj, "eobj")); evas_object_layer_set(cw->effect_obj, comp_layer); if (comp_layer > E_COMP_CANVAS_LAYER_LAYOUT) - e_comp_override_add(c); + e_comp_override_add(c); + else + { + E_Comp_Win *cwn; + E_Container *con; + + con = eina_list_data_get(c->man->containers); + cwn = e_comp_win_find(con->layers[0].win); + cwn->stack_below = eina_list_append(cwn->stack_below, cw); + cw->cw_above = cwn; + c->wins = eina_inlist_remove(c->wins, EINA_INLIST_GET(cw)); + c->wins = eina_inlist_prepend_relative(c->wins, EINA_INLIST_GET(cw), EINA_INLIST_GET(cwn)); + } } if (stack == E_COMP_CANVAS_STACK_ABOVE) _e_comp_win_raise(cw);