discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=bd0f2595b3fb96f1672edf78196c943fcaec4729
commit bd0f2595b3fb96f1672edf78196c943fcaec4729 Author: Mike Blumenkrantz <zm...@osg.samsung.com> Date: Thu Mar 17 13:35:50 2016 -0400 do not update client coords on csd geom update if it would change the zone in the case where a client is at 0,0 relative to a zone, changing the coords in this case will result in the client moving out of the zone by the size of the csd --- src/bin/e_comp_object.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index dd88bf2..18e09d3 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -3053,8 +3053,12 @@ e_comp_object_frame_geometry_set(Evas_Object *obj, int l, int r, int t, int b) { if ((calc || (!e_client_has_xwindow(cw->ec))) && cw->client_inset.calc) { - cw->ec->x -= l - cw->client_inset.l; - cw->ec->y -= t - cw->client_inset.t; + E_Zone *zone = e_comp_object_util_zone_get(obj); + + if (cw->ec->x != zone->x) + cw->ec->x -= l - cw->client_inset.l; + if (cw->ec->y != zone->y) + cw->ec->y -= t - cw->client_inset.t; } cw->ec->changes.pos = cw->ec->changes.size = 1; EC_CHANGED(cw->ec); --