cmd.c
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
/* * (C)opyright MMVI Anselm R. Garbe <garbeam at gmail dot com> * See LICENSE file for license details. */ #include "wm.h" #include <stdio.h> #include <string.h> void run(void *aux) { spawn(dpy, aux); } void quit(void *aux) { running = False; } void sel(void *aux) { const char *arg = aux; Client *c = NULL; if(!arg || !stack) return; if(!strncmp(arg, "next", 5)) c = stack->snext ? stack->snext : stack; else if(!strncmp(arg, "prev", 5)) for(c = stack; c && c->snext; c = c->snext); if(!c) c = stack; raise(c); focus(c); } void kill(void *aux) { Client *c = stack; if(!c) return; if(c->proto & WM_PROTOCOL_DELWIN) send_message(c->win, wm_atom[WMProtocols], wm_atom[WMDelete]); else XKillClient(dpy, c->win); }