summaryrefslogtreecommitdiff
path: root/include/compiz.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/compiz.h')
-rw-r--r--include/compiz.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/include/compiz.h b/include/compiz.h
index 2e0808c..76f3f88 100644
--- a/include/compiz.h
+++ b/include/compiz.h
@@ -90,6 +90,7 @@ typedef struct _CompCursor CompCursor;
typedef struct _CompMatch CompMatch;
typedef struct _CompMetadata CompMetadata;
typedef struct _CompOutput CompOutput;
+typedef struct _CompWalker CompWalker;
/* virtual modifiers */
@@ -1228,6 +1229,22 @@ typedef void (*ApplyScreenTransformProc) (CompScreen *screen,
CompOutput *output,
CompTransform *transform);
+typedef void (*WalkerFiniProc) (CompScreen *screen,
+ CompWalker *walker);
+
+typedef CompWindow *(*WalkInitProc) (CompScreen *screen);
+typedef CompWindow *(*WalkStepProc) (CompWindow *window);
+
+struct _CompWalker {
+ WalkerFiniProc fini;
+ CompPrivate priv;
+
+ WalkInitProc first;
+ WalkInitProc last;
+ WalkStepProc next;
+ WalkStepProc prev;
+};
+
/*
window paint flags
@@ -1703,6 +1720,9 @@ typedef void (*WindowAddNotifyProc) (CompWindow *window);
typedef void (*OutputChangeNotifyProc) (CompScreen *screen);
+typedef void (*InitWindowWalkerProc) (CompScreen *screen,
+ CompWalker *walker);
+
#define COMP_SCREEN_DAMAGE_PENDING_MASK (1 << 0)
#define COMP_SCREEN_DAMAGE_REGION_MASK (1 << 1)
#define COMP_SCREEN_DAMAGE_ALL_MASK (1 << 2)
@@ -2015,6 +2035,8 @@ struct _CompScreen {
OutputChangeNotifyProc outputChangeNotify;
+ InitWindowWalkerProc initWindowWalker;
+
CompPrivate *privates;
};