X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.h;h=a75c6d2b074c0d0b1a94b100aa368ac8b5a8116c;hb=ff04e2c9a98325e4ae13958ef63b455df303abc9;hp=10402914c68973796e18c90bc35377fa84780dbc;hpb=335e8acbfc5d2824f1fd2cb67a5add8e1ed40b06;p=chaz%2Fopenbox diff --git a/openbox/client.h b/openbox/client.h index 10402914..a75c6d2b 100644 --- a/openbox/client.h +++ b/openbox/client.h @@ -32,8 +32,9 @@ struct _ObFrame; struct _ObGroup; struct _ObSessionState; -typedef struct _ObClient ObClient; -typedef struct _ObClientIcon ObClientIcon; +typedef struct _ObClient ObClient; +typedef struct _ObClientIcon ObClientIcon; +typedef struct _ObAppSettings ObAppSettings; /* The value in client.transient_for indicating it is a transient for its group instead of for a single window */ @@ -201,9 +202,11 @@ struct _ObClient /*! True if the client supports the delete_window protocol */ gboolean delete_window; - /*! Was the window's position requested by the application? if not, we + /*! Was the window's position requested by the application or the user? + if by the application, we force it completely onscreen, if by the user + we only force it if it tries to go completely offscreen, if neither, we should place the window ourselves when it first appears */ - gboolean positioned; + guint positioned; /*! Can the window receive input focus? */ gboolean can_focus; @@ -267,6 +270,31 @@ struct _ObClient guint nicons; }; +struct _ObAppSettings +{ + gchar *name; + gchar *role; + + Point position; + gboolean center_x; + gboolean center_y; + gboolean pos_given; + + guint desktop; + gint shade; + gint decor; + gint focus; + gint head; + gint iconic; + gint skip_pager; + gint skip_taskbar; + gint max_horz; + gint max_vert; + gint fullscreen; + + gint layer; +}; + extern GList *client_list; void client_startup(gboolean reconfig);