X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.c;h=f5335c79a105e042584ff8c05b753b422db1a13f;hb=5316bc6c3e3329dc620cfd15d472ed5d376100f8;hp=c184c891dbb90efab902c47cb0f20f1e771dc2b3;hpb=b4eecc51b55509a0b9c8b5f8cdd536f6b668af58;p=chaz%2Fopenbox diff --git a/openbox/client.c b/openbox/client.c index c184c891..f5335c79 100644 --- a/openbox/client.c +++ b/openbox/client.c @@ -2398,8 +2398,10 @@ void client_configure_full(ObClient *self, ObCorner anchor, (resized && config_resize_redraw)))); /* if the client is enlarging, then resize the client before the frame */ - if (send_resize_client && user && (w > oldw || h > oldh)) + if (send_resize_client && user && (w > oldw || h > oldh)) { XResizeWindow(ob_display, self->window, MAX(w, oldw), MAX(h, oldh)); + frame_adjust_client_area(self->frame); + } /* find the frame's dimensions and move/resize it */ if (self->decorations != fdecor || self->max_horz != fhorz) @@ -2445,8 +2447,10 @@ void client_configure_full(ObClient *self, ObCorner anchor, } /* if the client is shrinking, then resize the frame before the client */ - if (send_resize_client && (!user || (w <= oldw || h <= oldh))) + if (send_resize_client && (!user || (w <= oldw || h <= oldh))) { XResizeWindow(ob_display, self->window, w, h); + frame_adjust_client_area(self->frame); + } XFlush(ob_display); } @@ -3225,7 +3229,8 @@ guint client_monitor(ObClient *self) ObClient *client_search_top_parent(ObClient *self) { - while (self->transient_for && self->transient_for != OB_TRAN_GROUP) + while (self->transient_for && self->transient_for != OB_TRAN_GROUP && + client_normal(self)) self = self->transient_for; return self; }