dwm-horizontal-6.4.diff - sites - public wiki contents of suckless.org
(HTM) git clone git://git.suckless.org/sites
(DIR) Log
(DIR) Files
(DIR) Refs
---
dwm-horizontal-6.4.diff (1386B)
---
1 diff --git a/config.def.h b/config.def.h
2 index 9efa774..24d44e0 100644
3 --- a/config.def.h
4 +++ b/config.def.h
5 @@ -39,6 +39,7 @@ static const int lockfullscreen = 1; /* 1 will force focus on the fullscreen win
6
7 static const Layout layouts[] = {
8 /* symbol arrange function */
9 + { "III", horizontal },
10 { "[]=", tile }, /* first entry is default */
11 { "><>", NULL }, /* no layout function means floating behavior */
12 { "[M]", monocle },
13 diff --git a/dwm.c b/dwm.c
14 index f1d86b2..9a188d9 100644
15 --- a/dwm.c
16 +++ b/dwm.c
17 @@ -175,6 +175,7 @@ static long getstate(Window w);
18 static int gettextprop(Window w, Atom atom, char *text, unsigned int size);
19 static void grabbuttons(Client *c, int focused);
20 static void grabkeys(void);
21 +static void horizontal(Monitor *m);
22 static void incnmaster(const Arg *arg);
23 static void keypress(XEvent *e);
24 static void killclient(const Arg *arg);
25 @@ -977,6 +978,22 @@ grabkeys(void)
26 }
27 }
28
29 +void
30 +horizontal(Monitor *m)
31 +{
32 + Client *c;
33 + unsigned int n, i;
34 +
35 + /* Count windows */
36 + for(n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++);
37 +
38 + if(!n)
39 + return;
40 + else /* Split vertically */
41 + for(i = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++)
42 + resize(c, m->wx + i * m->mw / n, m->wy, m->mw / n - (2 * c->bw), m->wh - (2 * c->bw), False);
43 +}
44 +
45 void
46 incnmaster(const Arg *arg)
47 {