aboutsummaryrefslogtreecommitdiff
path: root/sway/layout.h
blob: 3d14252bca0994114f48c2b4c9de211a01a5538c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef _SWAY_LAYOUT_H
#define _SWAY_LAYOUT_H

#include <wlc/wlc.h>
#include "list.h"

typedef enum {
    LAYOUT_IS_VIEW,
    LAYOUT_TILE_HORIZ,
    LAYOUT_TILE_VERT,
    LAYOUT_TABBED,
    LAYOUT_STACKED
} container_layout_t;

struct sway_container {
    wlc_handle output;
    list_t *children;
    container_layout_t layout;
    struct sway_container *parent;
};

extern list_t *outputs;
extern wlc_handle focused_view;

void init_layout();
void add_output(wlc_handle output);
void destroy_output(wlc_handle output);
wlc_handle get_topmost(wlc_handle output, size_t offset);
void destroy_view(wlc_handle view);
void add_view(wlc_handle view);

#endif