X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=openbox%2Fframe.h;h=beb6b8a0dfceed2762c74c3f1f9d90e70cb60160;hb=d158b642820910adf2d4f73370cf3537749230a6;hp=eb868dcbbbd83af8a956a23dd7d568921968a69f;hpb=25f215444b3c8e7b186b9c3892a9a4f659e79998;p=chaz%2Fopenbox diff --git a/openbox/frame.h b/openbox/frame.h index eb868dcb..beb6b8a0 100644 --- a/openbox/frame.h +++ b/openbox/frame.h @@ -78,6 +78,10 @@ struct _ObFrame Window window; + Pixmap pixmap; /* Offscreen buffer of the frame window's contents + when Composite is enabled */ + gboolean has_alpha; + Strut size; Rect area; gboolean visible; @@ -167,6 +171,7 @@ struct _ObFrame gint cbwidth_b; /* client border width */ gboolean max_horz; /* when maxed some decorations are hidden */ gboolean max_vert; /* when maxed some decorations are hidden */ + gboolean shaded; /* decorations adjust when shaded */ /* the leftmost and rightmost elements in the titlebar */ ObFrameContext leftmost; @@ -184,6 +189,7 @@ struct _ObFrame gboolean iconify_hover; gboolean focused; + gboolean need_render; gboolean flashing; gboolean flash_on; @@ -203,7 +209,6 @@ void frame_free(ObFrame *self); 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); @@ -231,6 +236,10 @@ void frame_client_gravity(ObFrame *self, gint *x, gint *y, gint w, gint h); */ void frame_frame_gravity(ObFrame *self, gint *x, gint *y, gint w, gint h); +/*! Convert a rectangle in client coordinates/sizes to what it would be + for the frame, given its current decorations sizes */ +void frame_rect_to_frame(ObFrame *self, Rect *r); + void frame_flash_start(ObFrame *self); void frame_flash_stop(ObFrame *self);