equal
deleted
inserted
replaced
36 if(i < sizeof prop - 1) |
36 if(i < sizeof prop - 1) |
37 prop[i++] = c->isfloating ? '1' : '0'; |
37 prop[i++] = c->isfloating ? '1' : '0'; |
38 prop[i] = '\0'; |
38 prop[i] = '\0'; |
39 XChangeProperty(dpy, c->win, dwmconfig, XA_STRING, 8, |
39 XChangeProperty(dpy, c->win, dwmconfig, XA_STRING, 8, |
40 PropModeReplace, (unsigned char *)prop, i); |
40 PropModeReplace, (unsigned char *)prop, i); |
|
41 } |
|
42 |
|
43 static unsigned int |
|
44 idxoftag(const char *tag) { |
|
45 unsigned int i; |
|
46 |
|
47 for(i = 0; i < ntags; i++) |
|
48 if(tags[i] == tag) |
|
49 return i; |
|
50 return 0; |
41 } |
51 } |
42 |
52 |
43 /* extern */ |
53 /* extern */ |
44 |
54 |
45 void |
55 void |
133 persistconfig(c); |
143 persistconfig(c); |
134 } |
144 } |
135 |
145 |
136 void |
146 void |
137 tag(const char *arg) { |
147 tag(const char *arg) { |
138 int i; |
148 unsigned int i; |
139 |
149 |
140 if(!sel) |
150 if(!sel) |
141 return; |
151 return; |
142 for(i = 0; i < ntags; i++) |
152 for(i = 0; i < ntags; i++) |
143 sel->tags[i] = arg == NULL; |
153 sel->tags[i] = arg == NULL; |
144 i = arg ? atoi(arg) : 0; |
154 i = idxoftag(arg); |
145 if(i >= 0 && i < ntags) |
155 if(i >= 0 && i < ntags) |
146 sel->tags[i] = True; |
156 sel->tags[i] = True; |
147 persistconfig(sel); |
157 persistconfig(sel); |
148 arrange(); |
158 arrange(); |
149 } |
159 } |
160 arrange(); |
170 arrange(); |
161 } |
171 } |
162 |
172 |
163 void |
173 void |
164 toggletag(const char *arg) { |
174 toggletag(const char *arg) { |
165 int i, j; |
175 unsigned int i, j; |
166 |
176 |
167 if(!sel) |
177 if(!sel) |
168 return; |
178 return; |
169 i = arg ? atoi(arg) : 0; |
179 i = idxoftag(arg); |
170 sel->tags[i] = !sel->tags[i]; |
180 sel->tags[i] = !sel->tags[i]; |
171 for(j = 0; j < ntags && !sel->tags[j]; j++); |
181 for(j = 0; j < ntags && !sel->tags[j]; j++); |
172 if(j == ntags) |
182 if(j == ntags) |
173 sel->tags[i] = True; |
183 sel->tags[i] = True; |
174 persistconfig(sel); |
184 persistconfig(sel); |
175 arrange(); |
185 arrange(); |
176 } |
186 } |
177 |
187 |
178 void |
188 void |
179 toggleview(const char *arg) { |
189 toggleview(const char *arg) { |
180 int i, j; |
190 unsigned int i, j; |
181 |
191 |
182 i = arg ? atoi(arg) : 0; |
192 i = idxoftag(arg); |
183 seltag[i] = !seltag[i]; |
193 seltag[i] = !seltag[i]; |
184 for(j = 0; j < ntags && !seltag[j]; j++); |
194 for(j = 0; j < ntags && !seltag[j]; j++); |
185 if(j == ntags) |
195 if(j == ntags) |
186 seltag[i] = True; /* cannot toggle last view */ |
196 seltag[i] = True; /* cannot toggle last view */ |
187 arrange(); |
197 arrange(); |
188 } |
198 } |
189 |
199 |
190 void |
200 void |
191 view(const char *arg) { |
201 view(const char *arg) { |
192 int i; |
202 unsigned int i; |
193 |
203 |
194 for(i = 0; i < ntags; i++) |
204 for(i = 0; i < ntags; i++) |
195 seltag[i] = arg == NULL; |
205 seltag[i] = arg == NULL; |
196 i = arg ? atoi(arg) : 0; |
206 i = idxoftag(arg); |
197 if(i >= 0 && i < ntags) |
207 if(i >= 0 && i < ntags) |
198 seltag[i] = True; |
208 seltag[i] = True; |
199 arrange(); |
209 arrange(); |
200 } |
210 } |