desktops) */
guint desktop;
+ /*! The startup id for the startup-notification protocol. This will be
+ NULL if a startup id is not set. */
+ gchar *startup_id;
+
/*! Normal window title */
gchar *title;
/*! The count for the title. When another window with the same title
gchar *class;
/*! The specified role of the window, used for identification */
gchar *role;
+ /*! The session client id for the window. *This can be NULL!* */
+ gchar *sm_client_id;
/*! The type of window (what its function is) */
ObClientType type;
extern GList *client_list;
-void client_startup();
-void client_shutdown();
-
-typedef void (*ObClientDestructorFunc)(ObClient *c);
+void client_startup(gboolean reconfig);
+void client_shutdown(gboolean reconfig);
-void client_add_destructor(ObClientDestructorFunc func);
-void client_remove_destructor(ObClientDestructorFunc func);
+void client_add_destructor(GDestroyNotify func);
+void client_remove_destructor(GDestroyNotify func);
/*! Manages all existing windows */
void client_manage_all();
guint client_monitor(ObClient *self);
-gchar* client_get_sm_client_id(ObClient *self);
+void client_update_sm_client_id(ObClient *self);
#endif