- Strut innersize;
-
- GSList *clients;
-
- int width; /* title and handle */
- int label_width;
- int icon_x; /* x-position of the window icon button */
- int label_x; /* x-position of the window title */
- int iconify_x; /* x-position of the window iconify button */
- int desk_x; /* x-position of the window all-desktops button */
- int shade_x; /* x-position of the window shade button */
- int max_x; /* x-position of the window maximize button */
- int close_x; /* x-position of the window close button */
- int bwidth; /* border width */
- int cbwidth; /* client border width */
-
- gboolean max_press;
- gboolean close_press;
- gboolean desk_press;
- gboolean shade_press;
- gboolean iconify_press;
-
- gboolean focused;
-} Frame;
-
-void frame_startup();
-void frame_shutdown();
-
-Frame *frame_new();
-void frame_show(Frame *self);
-void frame_hide(Frame *self);
-void frame_adjust_shape(Frame *self);
-void frame_adjust_area(Frame *self, gboolean moved, gboolean resized);
-void frame_adjust_state(Frame *self);
-void frame_adjust_focus(Frame *self, gboolean hilite);
-void frame_adjust_title(Frame *self);
-void frame_adjust_icon(Frame *self);
-void frame_grab_client(Frame *self, ObClient *client);
-void frame_release_client(Frame *self, ObClient *client);
-
-Context frame_context_from_string(char *name);
-
-Context frame_context(ObClient *self, Window win);
+ Strut innersize;
+
+ GSList *clients;
+
+ gint width; /* title and handle */
+ gint label_width;
+ gint icon_x; /* x-position of the window icon button */
+ gint label_x; /* x-position of the window title */
+ gint iconify_x; /* x-position of the window iconify button */
+ gint desk_x; /* x-position of the window all-desktops button */
+ gint shade_x; /* x-position of the window shade button */
+ gint max_x; /* x-position of the window maximize button */
+ gint close_x; /* x-position of the window close button */
+ gint bwidth; /* border width */
+ gint rbwidth; /* title border width */
+ gint cbwidth_x; /* client border width */
+ gint cbwidth_y; /* client border width */
+
+ gboolean max_press;
+ gboolean close_press;
+ gboolean desk_press;
+ gboolean shade_press;
+ gboolean iconify_press;
+ gboolean max_hover;
+ gboolean close_hover;
+ gboolean desk_hover;
+ gboolean shade_hover;
+ gboolean iconify_hover;
+
+ gboolean focused;
+
+ gboolean flashing;
+ gboolean flash_on;
+ GTimeVal flash_end;
+};
+
+ObFrame *frame_new();
+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_state(ObFrame *self);
+void frame_adjust_focus(ObFrame *self, gboolean hilite);
+void frame_adjust_title(ObFrame *self);
+void frame_adjust_icon(ObFrame *self);
+void frame_grab_client(ObFrame *self, struct _ObClient *client);
+void frame_release_client(ObFrame *self, struct _ObClient *client);
+
+ObFrameContext frame_context_from_string(const gchar *name);
+
+ObFrameContext frame_context(struct _ObClient *self, Window win);