]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.h
Merge branch 'backport' into work
[chaz/openbox] / openbox / client.h
index 49ff72bcdc204599963c1d76a7cf66047c43e0bd..a27d37c684acee50f5e674cd6687ab0eb8aa9a3b 100644 (file)
 #include <glib.h>
 #include <X11/Xlib.h>
 
+#ifdef HAVE_SYS_TYPES_H
+#  include <sys/types.h> /* for pid_t */
+#endif
+
 struct _ObFrame;
 struct _ObGroup;
 struct _ObSessionState;
@@ -115,6 +119,8 @@ struct _ObClient
     gchar *client_machine;
     /*! The command used to run the program. Pre-XSMP window identification. */
     gchar *wm_command;
+    /*! The PID of the process which owns the window */
+    pid_t pid;
 
     /*! The application that created the window */
     gchar *name;
@@ -222,6 +228,11 @@ struct _ObClient
 
     /*! Will the client respond to pings? */
     gboolean ping;
+    /*! Indicates if the client is trying to close but has stopped responding
+      to pings */
+    gboolean not_responding;
+    /*! We tried to close the window with a SIGTERM */
+    gboolean close_tried_term;
 
 #ifdef SYNC
     /*! The client wants to sync during resizes */
@@ -293,6 +304,9 @@ struct _ObClient
 
     /*! Where the window should iconify to/from */
     Rect icon_geometry;
+
+    /*! A boolean used for algorithms which need to mark clients as visited */
+    gboolean visited;
 };
 
 extern GList      *client_list;
@@ -308,10 +322,7 @@ typedef void (*ObClientCallback)(ObClient *client, gpointer data);
 void client_add_destroy_notify(ObClientCallback func, gpointer data);
 void client_remove_destroy_notify(ObClientCallback func);
 
-/*! Manages all existing windows */
-void client_manage_all();
-/*! Manages a given window
-*/
+/*! Manages a given window */
 void client_manage(Window win);
 /*! Unmanages all managed windows */
 void client_unmanage_all();
This page took 0.022665 seconds and 4 git commands to generate.