about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorarg@10ksloc.org <unknown>2006-07-21 07:37:52 +0200
committerarg@10ksloc.org <unknown>2006-07-21 07:37:52 +0200
commitcd8d8e120857329800e93e22572e35560d1b0e80 (patch)
treed8558f0a5e9c80c63947562f53752e71602ed241
parent04eb016e782743ec88f150ec6f5389703bed3ce2 (diff)
downloaddwm-cd8d8e120857329800e93e22572e35560d1b0e80.tar.gz
sanitization of several clunky stuff, removed heretag (rarely of use), simplified pop(), changed shortcuts to always contain MODKEY
-rw-r--r--client.c17
-rw-r--r--dwm.h22
-rw-r--r--event.c23
-rw-r--r--tag.c26
4 files changed, 40 insertions, 48 deletions
diff --git a/client.c b/client.c
index 4afa705..c20c517 100644
--- a/client.c
+++ b/client.c
@@ -476,7 +476,7 @@ unmanage(Client *c)
 void
 zoom(Arg *arg)
 {
-	Client *c;
+	Client *c, **l;
 
 	if(!sel)
 		return;
@@ -486,6 +486,19 @@ zoom(Arg *arg)
 			sel = c;
 	}
 
-	pop(sel);
+	/* pop */
+	for(l = &clients; *l && *l != sel; l = &(*l)->next);
+	if(sel->prev)
+		sel->prev->next = sel->next;
+	if(sel->next)
+		sel->next->prev = sel->prev;
+	*l = sel->next;
+
+	sel->prev = NULL;
+	if(clients)
+		clients->prev = sel;
+	sel->next = clients;
+	clients = sel;
+	arrange(NULL);
 	focus(sel);
 }
diff --git a/dwm.h b/dwm.h
index 1439f59..a6a04ca 100644
--- a/dwm.h
+++ b/dwm.h
@@ -7,21 +7,21 @@
 
 /* CUSTOMIZE */
 
-#define FONT				"-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*"
-#define BGCOLOR				"#0a2c2d"
-#define FGCOLOR				"#ddeeee"
-#define BORDERCOLOR			"#176164"
-#define MODKEY				 Mod1Mask /* Mod4Mask */
+#define FONT			"-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*"
+#define BGCOLOR			"#0a2c2d"
+#define FGCOLOR			"#ddeeee"
+#define BORDERCOLOR		"#176164"
+#define MODKEY			Mod1Mask /* Mod4Mask */
 /*
-#define BGCOLOR				"#666699"
-#define FGCOLOR				"#eeeeee"
-#define BORDERCOLOR			"#9999CC"
+#define BGCOLOR			"#666699"
+#define FGCOLOR			"#eeeeee"
+#define BORDERCOLOR		"#9999CC"
 */
-#define MASTERW				52 /* percent */
+#define MASTERW			52 /* percent */
 #define WM_PROTOCOL_DELWIN	1
 
 /* tags */
-enum { Tscratch, Tdev, Twww, Twork, TLast };
+enum { Tfnord, Tdev, Tnet, Twork, Tmisc, TLast };
 
 /* END CUSTOMIZE */
 
@@ -105,7 +105,6 @@ extern void higher(Client *c);
 extern void killclient(Arg *arg);
 extern void lower(Client *c);
 extern void manage(Window w, XWindowAttributes *wa);
-extern void pop(Client *c);
 extern void resize(Client *c, Bool sizehints, Corner sticky);
 extern void setsize(Client *c);
 extern void settitle(Client *c);
@@ -136,7 +135,6 @@ extern void dofloat(Arg *arg);
 extern void dotile(Arg *arg);
 extern Client *getnext(Client *c, unsigned int t);
 extern Client *getprev(Client *c);
-extern void heretag(Arg *arg);
 extern void replacetag(Arg *arg);
 extern void settags(Client *c);
 extern void togglemode(Arg *arg);
diff --git a/event.c b/event.c
index a0b3c0e..58df281 100644
--- a/event.c
+++ b/event.c
@@ -30,27 +30,26 @@ const char *xlock[] = { "xlock", NULL };
 
 static Key key[] = {
 	/* modifier		key		function	arguments */
-	{ ControlMask,		XK_0,		appendtag,	{ .i = Tscratch } }, 
-	{ ControlMask,		XK_1,		appendtag,	{ .i = Tdev } }, 
-	{ ControlMask,		XK_2,		appendtag,	{ .i = Twww } }, 
-	{ ControlMask,		XK_3,		appendtag,	{ .i = Twork } }, 
-	{ MODKEY,		XK_0,		view,		{ .i = Tscratch } }, 
+	{ MODKEY,		XK_0,		view,		{ .i = Tfnord } }, 
 	{ MODKEY,		XK_1,		view,		{ .i = Tdev } }, 
-	{ MODKEY,		XK_2,		view,		{ .i = Twww } }, 
+	{ MODKEY,		XK_2,		view,		{ .i = Tnet } }, 
 	{ MODKEY,		XK_3,		view,		{ .i = Twork } }, 
+	{ MODKEY,		XK_4,		view,		{ .i = Tmisc} }, 
 	{ MODKEY,		XK_j,		focusnext,	{ 0 } }, 
 	{ MODKEY,		XK_k,		focusprev,	{ 0 } },
 	{ MODKEY,		XK_m,		togglemax,	{ 0 } }, 
 	{ MODKEY,		XK_space,	togglemode,	{ 0 } }, 
 	{ MODKEY,		XK_Return,	zoom,		{ 0 } },
-	{ ControlMask|ShiftMask,XK_0,		heretag,	{ .i = Tscratch } }, 
-	{ ControlMask|ShiftMask,XK_1,		heretag,	{ .i = Tdev } }, 
-	{ ControlMask|ShiftMask,XK_2,		heretag,	{ .i = Twww } }, 
-	{ ControlMask|ShiftMask,XK_3,		heretag,	{ .i = Twork } }, 
-	{ MODKEY|ShiftMask,	XK_0,		replacetag,	{ .i = Tscratch } }, 
+	{ MODKEY|ControlMask,	XK_0,		appendtag,	{ .i = Tfnord } }, 
+	{ MODKEY|ControlMask,	XK_1,		appendtag,	{ .i = Tdev } }, 
+	{ MODKEY|ControlMask,	XK_2,		appendtag,	{ .i = Tnet } }, 
+	{ MODKEY|ControlMask,	XK_3,		appendtag,	{ .i = Twork } }, 
+	{ MODKEY|ControlMask,	XK_4,		appendtag,	{ .i = Tmisc } }, 
+	{ MODKEY|ShiftMask,	XK_0,		replacetag,	{ .i = Tfnord } }, 
 	{ MODKEY|ShiftMask,	XK_1,		replacetag,	{ .i = Tdev } }, 
-	{ MODKEY|ShiftMask,	XK_2,		replacetag,	{ .i = Twww } }, 
+	{ MODKEY|ShiftMask,	XK_2,		replacetag,	{ .i = Tnet } }, 
 	{ MODKEY|ShiftMask,	XK_3,		replacetag,	{ .i = Twork } }, 
+	{ MODKEY|ShiftMask,	XK_4,		replacetag,	{ .i = Tmisc } }, 
 	{ MODKEY|ShiftMask,	XK_c,		killclient,	{ 0 } }, 
 	{ MODKEY|ShiftMask,	XK_g,		spawn,		{ .argv = gimp } },
 	{ MODKEY|ShiftMask,	XK_l,		spawn,		{ .argv = xlock } },
diff --git a/tag.c b/tag.c
index 21eb9fa..f7ab6b9 100644
--- a/tag.c
+++ b/tag.c
@@ -21,15 +21,16 @@ typedef struct {
 /* CUSTOMIZE */ 
 static Rule rule[] = {
 	/* class:instance	tags				isfloat */
-	{ "Firefox.*",		{ [Twww] = "www" },		False },
+	{ "Firefox.*",		{ [Tnet] = "net" },		False },
 	{ "Gimp.*",		{ 0 },				True},
 };
 
 char *tags[TLast] = {
-	[Tscratch] = "scratch",
+	[Tfnord] = "fnord",
 	[Tdev] = "dev",
-	[Twww] = "www",
+	[Tnet] = "net",
 	[Twork] = "work",
+	[Tmisc] = "misc",
 };
 
 void (*arrange)(Arg *) = dotile;
@@ -148,25 +149,6 @@ getprev(Client *c)
 }
 
 void
-heretag(Arg *arg)
-{
-	int i;
-	Client *c;
-
-	if(arg->i == tsel)
-		return;
-
-	if(!(c = getnext(clients, arg->i)))
-		return;
-
-	for(i = 0; i < TLast; i++)
-		c->tags[i] = NULL;
-	c->tags[tsel] = tags[tsel];
-	pop(c);
-	focus(c);
-}
-
-void
 replacetag(Arg *arg)
 {
 	int i;
lame the previous revision' href='/akkartik/view.love/blame/select.lua?id=0d52962b3e6f91e458fbf858e62e684494373af8'>^
a655c21 ^
3850fba ^
95d88a8 ^
3850fba ^
e2696fc ^
1bdb931 ^


2ae9cac ^
9656e13 ^
69c88da ^
3114176 ^
0d52962 ^
188bbc7 ^
9d792a2 ^

0d52962 ^

f2299cb ^

0d52962 ^

f98cdd1 ^
188bbc7 ^

f98cdd1 ^
4ad51d6 ^


f98cdd1 ^
188bbc7 ^

5b91af1 ^
2ae9cac ^
5b91af1 ^
0d52962 ^

2ae9cac ^
188bbc7 ^



0d52962 ^







188bbc7 ^




1d3c9f4 ^
44fb3ec ^
188bbc7 ^
0d52962 ^
b95206f ^
a655c21 ^

0d52962 ^

a655c21 ^
0d52962 ^

007b965 ^
a655c21 ^
0d52962 ^
188bbc7 ^
d61b5df ^
0d52962 ^
a655c21 ^
0d52962 ^

188bbc7 ^




0d52962 ^







a655c21 ^

0d52962 ^
a655c21 ^
0d52962 ^
007b965 ^
a655c21 ^
0d52962 ^
a655c21 ^
0d52962 ^
a655c21 ^
e77157d ^
0d52962 ^
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161