#ifdef SHAPE
if (extensions_shape && e->type == extensions_shape_event_basep) {
client->shaped = ((XShapeEvent*)e)->shaped;
- frame_adjust_shape(client->frame);
+ frame_adjust_area(client->frame, FALSE, TRUE, FALSE);
}
#endif
}
static void set_theme_statics(ObFrame *self);
static void free_theme_statics(ObFrame *self);
static gboolean frame_animate_iconify(gpointer self);
+static void frame_adjust_shape(ObFrame *self);
static void frame_adjust_cursors(ObFrame *self);
static void frame_get_offscreen_buffer(ObFrame *self);
static void frame_free_offscreen_buffer(ObFrame *self);
ShapeUnion, Unsorted);
}
#endif
-
- /* the offscreen buffer's shape needs to match */
- frame_get_offscreen_buffer(self);
}
void frame_adjust_area(ObFrame *self, gboolean moved,
if (resized) {
self->need_render = TRUE;
framerender_frame(self);
- /* this also updates the offscreen buffer */
frame_adjust_shape(self);
+
+ /* the offscreen buffer's shape needs to match */
+ frame_get_offscreen_buffer(self);
}
if (!STRUT_EQUAL(self->size, oldsize)) {
void frame_show(ObFrame *self);
void frame_hide(ObFrame *self);
void frame_adjust_theme(ObFrame *self);
-void frame_adjust_shape(ObFrame *self);
void frame_adjust_area(ObFrame *self, gboolean moved,
gboolean resized, gboolean fake);
void frame_adjust_client_area(ObFrame *self);