summaryrefslogtreecommitdiff
path: root/openbox/slit.h
diff options
context:
space:
mode:
Diffstat (limited to 'openbox/slit.h')
-rw-r--r--openbox/slit.h55
1 files changed, 42 insertions, 13 deletions
diff --git a/openbox/slit.h b/openbox/slit.h
index 3dd3d3db..3cdcb309 100644
--- a/openbox/slit.h
+++ b/openbox/slit.h
@@ -1,11 +1,52 @@
#ifndef __slit_h
#define __slit_h
+#include "timer.h"
+#include "render/render.h"
+#include "window.h"
+#include "stacking.h"
+
#include <glib.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
-typedef struct Slit Slit;
+typedef enum {
+ SlitPos_Floating,
+ SlitPos_TopLeft,
+ SlitPos_Top,
+ SlitPos_TopRight,
+ SlitPos_Right,
+ SlitPos_BottomRight,
+ SlitPos_Bottom,
+ SlitPos_BottomLeft,
+ SlitPos_Left
+} SlitPosition;
+
+typedef struct Slit {
+ ObWindow obwin;
+
+ Window frame;
+ StackLayer layer;
+
+ /* user-requested position stuff */
+ SlitPosition pos;
+ int gravity;
+ int user_x, user_y;
+
+ /* actual position (when not auto-hidden) */
+ int x, y;
+ int w, h;
+
+ gboolean horz;
+ gboolean hide;
+ gboolean hidden;
+
+ Appearance *a_frame;
+
+ Timer *hide_timer;
+
+ GList *slit_apps;
+} Slit;
typedef struct SlitApp {
int ignore_unmaps;
@@ -19,18 +60,6 @@ typedef struct SlitApp {
int h;
} SlitApp;
-typedef enum {
- SlitPos_Floating,
- SlitPos_TopLeft,
- SlitPos_Top,
- SlitPos_TopRight,
- SlitPos_Right,
- SlitPos_BottomRight,
- SlitPos_Bottom,
- SlitPos_BottomLeft,
- SlitPos_Left
-} SlitPosition;
-
extern GHashTable *slit_map;
extern GHashTable *slit_app_map;