From b4e4214e5c13eab5e147ca36d6da7cf8efe5913e Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 29 May 2014 12:19:43 -0400 Subject: [PATCH] ensure client is actually stacked below the above-client when raising --- src/bin/e_comp_object.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index a47b396a5..043a40450 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -1161,11 +1161,12 @@ _e_comp_intercept_raise(void *data, Evas_Object *obj) return; } if (!EINA_INLIST_GET(cw->ec)->next) return;//already highest on layer + o = evas_object_above_get(obj); { E_Client *ecabove = e_client_above_get(cw->ec); - if (ecabove && (ecabove->frame == cw->comp->layers[cw->layer].obj)) return; //highest below marker + if (ecabove && (ecabove->frame == cw->comp->layers[cw->layer].obj) && + (ecabove->frame == o)) return; //highest below marker } - o = evas_object_above_get(obj); if (evas_object_layer_get(o) != evas_object_layer_get(obj)) return; //already at top! if (obj == cw->comp->layers[cw->layer].obj) //never raise a non-layer marker! {