X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=openbox%2Fsession.h;h=b2c18a1fa3778c48eb1e031e7f6e2715a3c55ce2;hb=ad852b6b56e43bdd7dda1389f54051cf92c0fad9;hp=0e7aa97e2d0bdfd7b1c8605f576ab7e8c93309c7;hpb=04a44af3c4d6365cbf7b551b9cc15eaaada28410;p=chaz%2Fopenbox diff --git a/openbox/session.h b/openbox/session.h index 0e7aa97e..b2c18a1f 100644 --- a/openbox/session.h +++ b/openbox/session.h @@ -1,8 +1,48 @@ +/* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*- + + session.h for the Openbox window manager + Copyright (c) 2003-2007 Dana Jansens + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + See the COPYING file for a copy of the GNU General Public License. +*/ + #ifndef __ob__session_h #define __ob__session_h -void session_load(char *path); -void session_startup(int argc, char **argv); -void session_shutdown(); +#include + +struct _ObClient; + +typedef struct _ObSessionState ObSessionState; + +struct _ObSessionState { + gchar *id, *name, *class, *role; + guint stacking; + guint desktop; + gint x, y, w, h; + gboolean shaded, iconic, skip_pager, skip_taskbar, fullscreen; + gboolean above, below, max_horz, max_vert; + + gboolean matched; +}; + +extern GList *session_saved_state; + +void session_startup(gint argc, gchar **argv); +void session_shutdown(gboolean permanent); + +GList* session_state_find(struct _ObClient *c); +gboolean session_state_cmp(ObSessionState *s, struct _ObClient *c); +void session_state_free(ObSessionState *state); #endif