Give layout enum a name: layout_t
Patch status: merged
Patch by Diego Ongaro
To apply this patch, use:
curl http://cr.i3wm.org/patch/165/raw.patch | git am
b/include/con.h
18 |
@@ -275,7 +275,7 @@ void con_set_border_style(Con *con, int border_style, int border_width);
|
19 |
* new split container before).
|
20 |
*
|
21 |
*/
|
22 |
-void con_set_layout(Con *con, int layout);
|
23 |
+void con_set_layout(Con *con, layout_t layout);
|
24 |
|
25 |
/**
|
26 |
* This function toggles the layout of a given container. toggle_mode can be
|
b/include/config.h
31 |
@@ -95,7 +95,7 @@ struct Config {
|
32 |
char *ipc_socket_path;
|
33 |
const char *restart_state_path;
|
34 |
|
35 |
- int default_layout;
|
36 |
+ layout_t default_layout;
|
37 |
int container_stack_limit;
|
38 |
int container_stack_limit_value;
|
39 |
int default_border_width;
|
b/include/data.h
44 |
@@ -80,6 +80,19 @@ enum {
|
45 |
};
|
46 |
|
47 |
/**
|
48 |
+ * Container layouts. See Con::layout.
|
49 |
+ */
|
50 |
+typedef enum {
|
51 |
+ L_DEFAULT = 0,
|
52 |
+ L_STACKED = 1,
|
53 |
+ L_TABBED = 2,
|
54 |
+ L_DOCKAREA = 3,
|
55 |
+ L_OUTPUT = 4,
|
56 |
+ L_SPLITV = 5,
|
57 |
+ L_SPLITH = 6
|
58 |
+} layout_t;
|
59 |
+
|
60 |
+/**
|
61 |
* Stores a rectangle, for example the size of a window, the child window etc.
|
62 |
* It needs to be packed so that the compiler will not add any padding bytes.
|
63 |
* (it is used in src/ewmh.c for example)
|
64 |
@@ -531,15 +544,7 @@ struct Con {
|
65 |
* parent and opening new containers). Instead, it stores the requested
|
66 |
* layout in workspace_layout and creates a new split container with that
|
67 |
* layout whenever a new container is attached to the workspace. */
|
68 |
- enum {
|
69 |
- L_DEFAULT = 0,
|
70 |
- L_STACKED = 1,
|
71 |
- L_TABBED = 2,
|
72 |
- L_DOCKAREA = 3,
|
73 |
- L_OUTPUT = 4,
|
74 |
- L_SPLITV = 5,
|
75 |
- L_SPLITH = 6
|
76 |
- } layout, last_split_layout, workspace_layout;
|
77 |
+ layout_t layout, last_split_layout, workspace_layout;
|
78 |
border_style_t border_style;
|
79 |
/** floating? (= not in tiling layout) This cannot be simply a bool
|
80 |
* because we want to keep track of whether the status was set by the
|
b/src/commands.c
85 |
@@ -1547,7 +1547,7 @@ void cmd_layout(I3_CMD, char *layout_str) {
|
86 |
if (strcmp(layout_str, "stacking") == 0)
|
87 |
layout_str = "stacked";
|
88 |
owindow *current;
|
89 |
- int layout;
|
90 |
+ layout_t layout;
|
91 |
/* default is a special case which will be handled in con_set_layout(). */
|
92 |
if (strcmp(layout_str, "default") == 0)
|
93 |
layout = L_DEFAULT;
|
b/src/con.c
98 |
@@ -1209,7 +1209,7 @@ void con_set_border_style(Con *con, int border_style, int border_width) {
|
99 |
* new split container before).
|
100 |
*
|
101 |
*/
|
102 |
-void con_set_layout(Con *con, int layout) {
|
103 |
+void con_set_layout(Con *con, layout_t layout) {
|
104 |
DLOG("con_set_layout(%p, %d), con->type = %d\n",
|
105 |
con, layout, con->type);
|
106 |
|
b/src/handlers.c
111 |
@@ -158,7 +158,7 @@ static void handle_enter_notify(xcb_enter_notify_event_t *event) {
|
112 |
}
|
113 |
|
114 |
/* see if the user entered the window on a certain window decoration */
|
115 |
- int layout = (enter_child ? con->parent->layout : con->layout);
|
116 |
+ layout_t layout = (enter_child ? con->parent->layout : con->layout);
|
117 |
if (layout == L_DEFAULT) {
|
118 |
Con *child;
|
119 |
TAILQ_FOREACH(child, &(con->nodes_head), nodes)
|