gchar *icon_title;
/*! Hostname of machine running the client */
gchar *client_machine;
+ /*! The command used to run the program. Pre-XSMP window identification. */
+ gchar *wm_command;
/*! The application that created the window */
gchar *name;
guint32 user_time;
};
-struct _ObAppSettings
-{
- gchar *class;
- 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);
void client_shutdown(gboolean reconfig);
-typedef void (*ObClientDestructor)(ObClient *client, gpointer data);
+typedef void (*ObClientCallback)(ObClient *client, gpointer data);
-void client_add_destructor(ObClientDestructor func, gpointer data);
-void client_remove_destructor(ObClientDestructor func);
+/* Callback functions */
+
+/*! Get notified when the client is unmanaged */
+void client_add_destructor(ObClientCallback func, gpointer data);
+void client_remove_destructor(ObClientCallback func);
+
+/*! Get notified when the client changes desktop */
+void client_add_desktop_notify(ObClientCallback func, gpointer data);
+void client_remove_desktop_notify(ObClientCallback func);
/*! Manages all existing windows */
void client_manage_all();
void client_update_wmhints(ObClient *self);
/*! Updates the window's title and icon title */
void client_update_title(ObClient *self);
-/*! Updates the window's application name and class */
-void client_update_class(ObClient *self);
/*! Updates the strut for the client */
void client_update_strut(ObClient *self);
/*! Updates the window's icons */
guint client_monitor(ObClient *self);
-void client_update_sm_client_id(ObClient *self);
-
ObClient* client_under_pointer();
gboolean client_has_group_siblings(ObClient *self);