]> Dogcows Code - chaz/openbox/blobdiff - openbox/stacking.h
why didn't that commit
[chaz/openbox] / openbox / stacking.h
index edcedea24909235955b525c5bc73d7c97bceb126..ded4644ebb13d791b3df1da57e58c42312bcf2f6 100644 (file)
@@ -2,7 +2,7 @@
 
    stacking.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
@@ -27,6 +27,7 @@
 
 /*! The possible stacking layers a client window can be a part of */
 typedef enum {
+    OB_STACKING_LAYER_INVALID,
     OB_STACKING_LAYER_DESKTOP,     /*!< 0 - desktop windows */
     OB_STACKING_LAYER_BELOW,       /*!< 1 - normal windows w/ below */
     OB_STACKING_LAYER_NORMAL,      /*!< 2 - normal windows */
@@ -48,10 +49,10 @@ void stacking_add_nonintrusive(ObWindow *win);
 #define stacking_remove(win) stacking_list = g_list_remove(stacking_list, win);
 
 /*! Raises a window above all others in its stacking layer */
-void stacking_raise(ObWindow *window, gboolean group);
+void stacking_raise(ObWindow *window);
 
 /*! Lowers a window below all others in its stacking layer */
-void stacking_lower(ObWindow *window, gboolean group);
+void stacking_lower(ObWindow *window);
 
 /*! Moves a window below another if its in the same layer.
   This function does not enforce stacking rules IRT transients n such, and so
@@ -59,4 +60,18 @@ void stacking_lower(ObWindow *window, gboolean group);
 */
 void stacking_below(ObWindow *window, ObWindow *below);
 
+/*! Restack a window based upon a sibling (or all windows) in various ways.
+  @param client The client to be restacked
+  @param sibling Another client to compare to, or NULL to compare to all
+                 windows
+  @param detail One of Above, Below, TopIf, BottomIf, Opposite
+  @param activate If TRUE, and if the window is going to be raised, it will
+                  be activated instead
+  See http://tronche.com/gui/x/xlib/window/configure.html for details on
+  how each detail works with and without a sibling.
+*/
+void stacking_restack_request(struct _ObClient *client,
+                              struct _ObClient *sibling,
+                              gint detail, gboolean);
+
 #endif
This page took 0.026843 seconds and 4 git commands to generate.