X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fframe.h;h=3a5dfdb25642895d15f01c5bb53f759a5f2986dd;hb=cdb108c76d20e8272bfbd15919e32e609d685322;hp=8f210b0c6dc745edd19942e65edc703fef722f40;hpb=08e42acaadf8868abb94dc75da0daa9c6e4e2d1c;p=chaz%2Fopenbox diff --git a/openbox/frame.h b/openbox/frame.h index 8f210b0c..3a5dfdb2 100644 --- a/openbox/frame.h +++ b/openbox/frame.h @@ -114,8 +114,16 @@ struct _ObFrame GSList *clients; - gint width; /* title and handle */ - gint label_width; + gint icon_on; /* if the window icon button is on */ + gint label_on; /* if the window title is on */ + gint iconify_on; /* if the window iconify button is on */ + gint desk_on; /* if the window all-desktops button is on */ + gint shade_on; /* if the window shade button is on */ + gint max_on; /* if the window maximize button is on */ + gint close_on; /* if the window close button is on */ + + gint width; /* width of the titlebar and handle */ + gint label_width; /* width of the label in the titlebar */ 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 */ @@ -145,16 +153,12 @@ struct _ObFrame gboolean flash_on; GTimeVal flash_end; - /*! The step which the client is currently in for animating iconify and - restore. - 0 means that it is not animating. FRAME_ANIMATE_ICONIFY_STEPS is the - first step for iconifying, and -FRAME_ANIMATE_ICONIFY_STEPS is the - forst step for restoring. It counts towards 0 either way. Visually, - +x == -(FRAME_ANIMATE_ICONIFY_STEPS-x+1) + /*! Is the frame currently in an animation for iconify or restore. + 0 means that it is not animating. > 0 means it is animating an iconify. + < 0 means it is animating a restore. */ - gint iconify_animation_step; - ObFrameIconifyAnimateFunc iconify_animation_cb; - gpointer iconify_animation_data; + gint iconify_animation_going; + GTimeVal iconify_animation_end; }; ObFrame *frame_new(struct _ObClient *c); @@ -194,8 +198,9 @@ void frame_flash_stop(ObFrame *self); /*! Start an animation for iconifying or restoring a frame. The callback will be called when the animation finishes. But if another animation is started in the meantime, the callback will never get called. */ -void frame_begin_iconify_animation(ObFrame *self, gboolean iconifying, - ObFrameIconifyAnimateFunc callback, - gpointer data); +void frame_begin_iconify_animation(ObFrame *self, gboolean iconifying); +void frame_end_iconify_animation(ObFrame *self); + +#define frame_iconify_animating(f) (f->iconify_animation_going != 0) #endif