]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.h
only grab keybinds on the root window, not every client window
[chaz/openbox] / openbox / client.h
index 40464151ee09a3b1526a7ba75f6484bef65cf5b9..69f5aa5fd65f0311cc0eadf673fb2ac22b447066 100644 (file)
@@ -2,7 +2,7 @@
 
    client.h for the Openbox window manager
    Copyright (c) 2006        Mikael Magnusson
-   Copyright (c) 2003        Ben Jansens
+   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
@@ -116,6 +116,8 @@ struct _ObClient
     gchar *title;
     /*! Window title when iconified */
     gchar *icon_title;
+    /*! Hostname of machine running the client */
+    gchar *client_machine;
 
     /*! The application that created the window */
     gchar *name;
@@ -136,6 +138,9 @@ struct _ObClient
     */
     Rect area;
 
+    /*! Position of the client window relative to the root window */
+    Point root_pos;
+
     /*! Position and size of the window prior to being maximized */
     Rect pre_max_area;
     /*! Position and size of the window prior to being fullscreened */
@@ -188,6 +193,9 @@ struct _ObClient
 
     /*! Window decoration and functionality hints */
     ObMwmHints mwmhints;
+
+    /*! The client's specified colormap */
+    Colormap colormap;
   
     /*! Where to place the decorated window in relation to the undecorated
       window */
@@ -211,6 +219,15 @@ struct _ObClient
     /*! Notify the window when it receives focus? */
     gboolean focus_notify;
 
+#ifdef SYNC
+    /*! The client wants to sync during resizes */
+    gboolean sync_request;
+    /*! The XSync counter used for synchronizing during resizes */
+    guint32 sync_counter;
+    /*! The value we're waiting for the counter to reach */
+    gulong sync_counter_value;
+#endif
+
     /*! The window uses shape extension to be non-rectangular? */
     gboolean shaped;
 
@@ -538,6 +555,12 @@ void client_update_transient_for(ObClient *self);
 /*! Update the protocols that the window supports and adjusts things if they
   change */
 void client_update_protocols(ObClient *self);
+#ifdef SYNC
+/*! Updates the window's sync request counter for resizes */
+void client_update_sync_request_counter(ObClient *self);
+#endif
+/*! Updates the window's colormap */
+void client_update_colormap(ObClient *self, Colormap colormap);
 /*! Updates the WMNormalHints and adjusts things if they change */
 void client_update_normal_hints(ObClient *self);
 
@@ -556,7 +579,7 @@ void client_update_strut(ObClient *self);
 /*! Updates the window's icons */
 void client_update_icons(ObClient *self);
 /*! Updates the window's user time */
-void client_update_user_time(ObClient *self, gboolean new_event);
+void client_update_user_time(ObClient *self);
 
 /*! Set up what decor should be shown on the window and what functions should
   be allowed (ObClient::decorations and ObClient::functions).
@@ -615,9 +638,6 @@ ObClient *client_search_parent(ObClient *self, ObClient *search);
   NULL is returned if the given search is not a transient of the client. */
 ObClient *client_search_transient(ObClient *self, ObClient *search);
 
-/*! Return the "closest" client in the given direction */
-ObClient *client_find_directional(ObClient *c, ObDirection dir);
-
 /*! Return the closest edge in the given direction */
 gint client_directional_edge_search(ObClient *c, ObDirection dir, gboolean hang);
 
This page took 0.028026 seconds and 4 git commands to generate.