]> Dogcows Code - chaz/openbox/blobdiff - openbox/stacking.h
why didn't that commit
[chaz/openbox] / openbox / stacking.h
index 365db0c0995d4ba0e3fc796e0f9972aed2a589eb..ded4644ebb13d791b3df1da57e58c42312bcf2f6 100644 (file)
@@ -1,7 +1,8 @@
 /* -*- indent-tabs-mode: nil; tab-width: 4; c-basic-offset: 4; -*-
 
    stacking.h for the Openbox window manager
-   Copyright (c) 2003        Ben Jansens
+   Copyright (c) 2006        Mikael Magnusson
+   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
@@ -26,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 */
@@ -47,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
@@ -58,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.021307 seconds and 4 git commands to generate.