summaryrefslogtreecommitdiff
path: root/openbox/client.c
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/client.c')
-rw-r--r--openbox/client.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/openbox/client.c b/openbox/client.c
index 4abff4c5..33967962 100644
--- a/openbox/client.c
+++ b/openbox/client.c
@@ -2437,8 +2437,11 @@ void client_configure_full(ObClient *self, gint x, gint y, gint w, gint h,
(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));
+ /* resize the plate to show the client padding color underneath */
+ frame_adjust_client_area(self->frame);
+ }
/* find the frame's dimensions and move/resize it */
if (self->decorations != fdecor || self->max_horz != fhorz)
@@ -2484,8 +2487,12 @@ void client_configure_full(ObClient *self, gint x, gint y, gint w, gint h,
}
/* 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))) {
+ /* resize the plate to show the client padding color underneath */
+ frame_adjust_client_area(self->frame);
+
XResizeWindow(ob_display, self->window, w, h);
+ }
XFlush(ob_display);
}