- if (resized) {
- /* move and resize the plate */
- XMoveResizeWindow(ob_display, self->plate,
- self->innersize.left - self->cbwidth,
- self->innersize.top - self->cbwidth,
- self->client->area.width,
- self->client->area.height);
- /* when the client has StaticGravity, it likes to move around. */
- XMoveWindow(ob_display, self->client->window, 0, 0);
- }
+ if (!fake) {
+ if (self->decorations & OB_FRAME_DECOR_HANDLE &&
+ ob_rr_theme->handle_height > 0)
+ {
+ XMoveResizeWindow(ob_display, self->handle,
+ -self->bwidth, FRAME_HANDLE_Y(self),
+ self->width, ob_rr_theme->handle_height);
+ XMapWindow(ob_display, self->handle);
+
+ if (self->decorations & OB_FRAME_DECOR_GRIPS) {
+ XMoveWindow(ob_display, self->lgrip,
+ -self->rbwidth, -self->rbwidth);
+ XMoveWindow(ob_display, self->rgrip,
+ -self->rbwidth + self->width -
+ ob_rr_theme->grip_width, -self->rbwidth);
+ XMapWindow(ob_display, self->lgrip);
+ XMapWindow(ob_display, self->rgrip);
+ } else {
+ XUnmapWindow(ob_display, self->lgrip);
+ XUnmapWindow(ob_display, self->rgrip);
+ }
+ } else
+ XUnmapWindow(ob_display, self->handle);
+
+ /* move and resize the plate */
+ XMoveResizeWindow(ob_display, self->plate,
+ self->innersize.left - self->cbwidth_x,
+ self->innersize.top - self->cbwidth_y,
+ self->client->area.width + self->cbwidth_x * 2,
+ self->client->area.height + self->cbwidth_y * 2);
+ /* when the client has StaticGravity, it likes to move around. */
+ XMoveWindow(ob_display, self->client->window,
+ self->cbwidth_x, self->cbwidth_y);
+ }