POINT_SET(self->root_pos, wattrib.x, wattrib.y);
self->border_width = wattrib.border_width;
- ob_debug("client area: %d %d %d %d\n", wattrib.x, wattrib.y,
- wattrib.width, wattrib.height);
+ ob_debug("client area: %d %d %d %d bw %d\n", wattrib.x, wattrib.y,
+ wattrib.width, wattrib.height, wattrib.border_width);
}
static void client_get_desktop(ObClient *self)
void client_reconfigure(ObClient *self)
{
- /* by making this pass FALSE for user, we avoid the emacs event storm where
- every configurenotify causes an update in its normal hints, i think this
- is generally what we want anyways... */
client_configure(self, self->area.x, self->area.y,
self->area.width, self->area.height,
self->border_width, FALSE, TRUE);
changes.height = MAX(h, oldh);
changes.border_width = self->border_width;
XConfigureWindow(ob_display, self->window,
- (moved ? CWX|CWY : 0) |
- (resized ? CWWidth|CWHeight|CWBorderWidth : 0),
+ CWX|CWY|CWWidth|CWHeight|CWBorderWidth,
&changes);
/* resize the plate to show the client padding color underneath */
frame_adjust_client_area(self->frame);
event.xconfigure.width = w;
event.xconfigure.height = h;
event.xconfigure.border_width = self->border_width;
- event.xconfigure.above = self->frame->plate;
+ event.xconfigure.above = None;
event.xconfigure.override_redirect = FALSE;
XSendEvent(event.xconfigure.display, event.xconfigure.window,
FALSE, StructureNotifyMask, &event);
}
/* if the client is shrinking, then resize the frame before the client */
- if (send_resize_client && (w <= oldw || h <= oldh)) {
+ if (send_resize_client && (w <= oldw && h <= oldh)) {
/* resize the plate to show the client padding color underneath */
frame_adjust_client_area(self->frame);
changes.height = h;
changes.border_width = self->border_width;
XConfigureWindow(ob_display, self->window,
- (moved ? CWX|CWY : 0) |
- (resized ? CWWidth|CWHeight|CWBorderWidth : 0),
+ CWX|CWY|CWWidth|CWHeight|CWBorderWidth,
&changes);
}
}