X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fclient.h;h=3ab555b00097706f63e7f7044ac5ebb96055a75d;hb=40bfb2b6e5249608f6f7d0c8012ca44f67883843;hp=89bdb518727429774c1af51de2f5a39231a088b3;hpb=db086ef336e01ee23c777f3dc6678568565d44ef;p=chaz%2Fopenbox diff --git a/openbox/client.h b/openbox/client.h index 89bdb518..3ab555b0 100644 --- a/openbox/client.h +++ b/openbox/client.h @@ -7,7 +7,11 @@ #include struct Frame; +struct Group; +/* The value in client.transient_for indicating it is a transient for its + group instead of for a single window */ +#define TRAN_GROUP ((void*)~0l) /*! Holds an icon in ARGB format */ typedef struct Icon { @@ -114,12 +118,16 @@ typedef struct Client { int ignore_unmaps; /*! The id of the group the window belongs to */ - Window group; + struct Group *group; /*! Whether or not the client is a transient window. This is guaranteed to be TRUE if transient_for != NULL, but not guaranteed to be FALSE if transient_for == NULL. */ gboolean transient; - /*! The client which this client is a transient (child) for */ + /*! The client which this client is a transient (child) for. + A value of TRAN_GROUP signifies that the window is a transient for all + members of its Group, and is not a valid pointer to be followed in this + case. + */ struct Client *transient_for; /*! The clients which are transients (children) of this client */ GSList *transients;