]> Dogcows Code - chaz/openbox/blobdiff - openbox/client.h
put focus_cycle into focus.c, use it there in the action. improved it as well to...
[chaz/openbox] / openbox / client.h
index e01e2ebeeabc7c1a266a7c7fd27232352ad18712..89bdb518727429774c1af51de2f5a39231a088b3 100644 (file)
@@ -100,7 +100,8 @@ typedef enum {
     /*! Display a button to toggle the window's placement on
       all desktops */
     Decor_AllDesktops = 1 << 6,
-    Decor_Close       = 1 << 7  /*!< Display a close button */
+    Decor_Shade       = 1 << 7, /*!< Displays a shade button */
+    Decor_Close       = 1 << 8  /*!< Display a close button */
 } Decoration;
 
 
@@ -284,7 +285,7 @@ typedef struct Client {
     Pixmap pixmap_icon_mask;
 } Client;
 
-extern GSList *client_list;
+extern GList *client_list;
 extern GHashTable *client_map;
 
 void client_startup();
@@ -381,7 +382,9 @@ void client_close(Client *self);
 /*! Kill the client off violently */
 void client_kill(Client *self);
 
-/*! Sends the window to the specified desktop */
+/*! Sends the window to the specified desktop
+  @param donthide If TRUE, the window will not be shown/hidden after its
+         desktop has been changed. Generally this should be FALSE. */
 void client_set_desktop(Client *self, guint target, gboolean donthide);
 
 /*! Return a modal child of the client window
@@ -407,6 +410,14 @@ void client_set_wm_state(Client *self, long state);
 */
 void client_set_state(Client *self, Atom action, long data1, long data2);
 
+/* Given a Client, find the client that focus would actually be sent to if
+   you wanted to give focus to the specified Client. Will return the same
+   Client passed to it or another Client if appropriate. */
+Client *client_focus_target(Client *self);
+
+/* Returns if a client can be focused or not */
+gboolean client_focusable(Client *self);
+
 /*! Attempt to focus the client window */
 gboolean client_focus(Client *self);
 
This page took 0.02097 seconds and 4 git commands to generate.