X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.h;h=c4815d4c83e0cfb56b796d5b4a7b771798caa215;hb=11df262d7eb56ae6af98af86cbfee8226107114d;hp=5a837391fefefb9f2efe0a102abd2551b0906ae9;hpb=98304406432cda3a94c2a57f0812714a229ec77a;p=chaz%2Fopenbox diff --git a/openbox/client.h b/openbox/client.h index 5a837391..c4815d4c 100644 --- a/openbox/client.h +++ b/openbox/client.h @@ -71,7 +71,9 @@ typedef enum OB_CLIENT_FUNC_MAXIMIZE = 1 << 3, /*!< Allow to be maximized */ OB_CLIENT_FUNC_SHADE = 1 << 4, /*!< Allow to be shaded */ OB_CLIENT_FUNC_FULLSCREEN = 1 << 5, /*!< Allow to be made fullscreen */ - OB_CLIENT_FUNC_CLOSE = 1 << 6 /*!< Allow to be closed */ + OB_CLIENT_FUNC_CLOSE = 1 << 6, /*!< Allow to be closed */ + OB_CLIENT_FUNC_ABOVE = 1 << 7, /*!< Allow to be put in lower layer */ + OB_CLIENT_FUNC_BELOW = 1 << 8 /*!< Allow to be put in higher layer */ } ObFunctions; struct _ObClient @@ -166,7 +168,7 @@ struct _ObClient The window manager will set this to 0 while the window is being managed, but needs to restore it afterwards, so it is saved here. */ - guint border_width; + gint border_width; /*! The minimum aspect ratio the client window can be sized to. A value of 0 means this is ignored. @@ -309,8 +311,12 @@ typedef void (*ObClientCallback)(ObClient *client, gpointer data); /* Callback functions */ /*! Get notified when the client is unmanaged */ -void client_add_destructor(ObClientCallback func, gpointer data); -void client_remove_destructor(ObClientCallback func); +void client_add_destroy_notify(ObClientCallback func, gpointer data); +void client_remove_destroy_notify(ObClientCallback func); + +/*! Get notified when the client is hidden */ +void client_add_hide_notify(ObClientCallback func, gpointer data); +void client_remove_hide_notify(ObClientCallback func); /*! Manages all existing windows */ void client_manage_all(); @@ -375,7 +381,7 @@ void client_convert_gravity(ObClient *self, gint gravity, gint *x, gint *y, client_configure(self, x, y, w, h, TRUE, TRUE) #define client_configure(self, x, y, w, h, user, final) \ - client_configure_full(self, x, y, w, h, user, final, FALSE) + client_configure_full(self, x, y, w, h, user, final) /*! Figure out where a window will end up and what size it will be if you told it to move/resize to these coordinates. @@ -417,8 +423,7 @@ void client_try_configure(ObClient *self, gint *x, gint *y, gint *w, gint *h, the position changed. */ void client_configure_full(ObClient *self, gint x, gint y, gint w, gint h, - gboolean user, gboolean final, - gboolean force_reply); + gboolean user, gboolean final); void client_reconfigure(ObClient *self); @@ -458,7 +463,8 @@ void client_fullscreen(ObClient *self, gboolean fs); be uniconified to the current viewable desktop (true) or to its previous desktop (false) */ -void client_iconify(ObClient *self, gboolean iconic, gboolean curdesk); +void client_iconify(ObClient *self, gboolean iconic, gboolean curdesk, + gboolean hide_animation); /*! Maximize or unmaximize the client window @param max true if the window should be maximized; false if it should be