From 19b9770291bad665bc9bcd5d7ea4f0e7c95c0d2b Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 31 Dec 2015 12:56:06 -0500 Subject: [PATCH] add special case for frame adjustment during first recalc of new clients in the case where a new client already has coordinates from creation event, the frame was never adjusted which resulted in the window being positioned incorrectly ref T1106 --- src/bin/e_comp_object.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/bin/e_comp_object.c b/src/bin/e_comp_object.c index 7a66a7b3f..0fa1b0025 100644 --- a/src/bin/e_comp_object.c +++ b/src/bin/e_comp_object.c @@ -3175,6 +3175,11 @@ reshadow: do { _e_comp_smart_cb_frame_recalc(cw, cw->smart_obj, NULL); + if ((cw->x == -1) && (cw->y == -1) && cw->ec->new_client && (!cw->ec->placed)) + { + cw->ec->x = MAX(cw->ec->zone->x, cw->ec->client.x - cw->client_inset.l); + cw->ec->y = MAX(cw->ec->zone->y, cw->ec->client.y - cw->client_inset.t); + } /* this guarantees that we won't get blocked by the NOP check in the interceptor */ cw->y = cw->x = -99999; if (pbg)