XMoveResizeWindow(obp_display, self->window, self->area.x,
self->area.y, self->area.width, self->area.height);
- /* when the client has StaticGravity, it likes to move around.
- also this correctly positions the client when it maps.
- this also needs to be run when the frame's decorations sizes change!
- */
- if (!is_resize)
- XMoveResizeWindow(obp_display, self->client->w_client,
- self->size.left, self->size.top, self->client_area.width,
- self->client_area.height);
-
if (is_resize) {
- self->need_render = TRUE;
- frame_update_skin(self);
- frame_adjust_shape(self);
+ //frame_update_skin(self);
+ //frame_adjust_shape(self);
}
if (!STRUT_EQUAL(self->size, oldsize)) {
self->area = oldarea;
frame_engine->frame_set_decorations (self->frame, self->decorations);
frame_engine->frame_update_layout (self->frame, self->area, FALSE, FALSE);
+ /* when the client has StaticGravity, it likes to move around.
+ also this correctly positions the client when it maps.
+ this also needs to be run when the frame's decorations sizes change!
+ */
+ Strut size;
+ frame_engine->frame_get_size (self->frame, &size);
+ XMoveResizeWindow(obt_display, self->w_client,
+ size.left, size.top, self->area.width,
+ self->area.height);
/* if this occurs while we are focus cycling, the indicator needs to
match the changes */
if (focus_cycle_target == self)
frame_engine->frame_set_decorations (self->frame, self->decorations);
frame_engine->frame_update_layout (self->frame, self->area, TRUE, FALSE);
+
/* if this occurs while we are focus cycling, the indicator needs to
match the changes */
if (focus_cycle_target == self)
if (focus_cycle_target == self)
focus_cycle_draw_indicator(self);
}
-
+
+ if (user && final) {
+ /* when the client has StaticGravity, it likes to move around.
+ also this correctly positions the client when it maps.
+ this also needs to be run when the frame's decorations sizes change!
+ */
+ Strut size;
+ frame_engine->frame_get_size(self->frame, &size);
+ XMoveResizeWindow(obt_display, self->w_client, size.left, size.top,
+ self->area.width, self->area.height);
+ }
+
XFlush(obt_display);
/* if it moved between monitors, then this can affect the stacking