summaryrefslogtreecommitdiff
path: root/src/data.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/data.h')
-rw-r--r--src/data.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/src/data.h b/src/data.h
index e87d63e..9f0d2fd 100644
--- a/src/data.h
+++ b/src/data.h
@@ -106,9 +106,8 @@ struct screen_info
char *display_string;
- /* A list of frames that may or may not contain windows. There should
- always be one in the list. */
- struct list_head rp_window_frames;
+ /* A tree of frame splits. */
+ rp_split_tree *split_tree;
/* Keep track of which numbers have been given to frames. */
struct numset *frames_numset;
@@ -118,6 +117,21 @@ struct screen_info
rp_window_frame *rp_current_frame;
};
+rp_split_tree
+{
+ /* The width and height of this node. */
+ int width, height;
+
+ /* The frame occupying this split. If this is a leaf node, then
+ frame will not be a pointer to an actual frame, otherwise it'll
+ be NULL. */
+ rp_window_frame *frame;
+
+ /* A list of rp_split_tree children. By convention this list is
+ always has 0 or 2 elements in it. */
+ struct list_head children;
+}
+
struct rp_action
{
KeySym key;