new stuff, fixed several issues
This commit is contained in:
parent
2e836ecce1
commit
b1701adf75
4
client.c
4
client.c
|
@ -44,8 +44,8 @@ arrange(void *aux)
|
||||||
else
|
else
|
||||||
cols = rows;
|
cols = rows;
|
||||||
|
|
||||||
gw = (sw - 2 * c->border) / cols;
|
gw = (sw - 2) / cols;
|
||||||
gh = (sh - bh - 2 * c->border) / rows;
|
gh = (sh - bh - 2) / rows;
|
||||||
|
|
||||||
for(i = j = 0, c = clients; c; c = c->next) {
|
for(i = j = 0, c = clients; c; c = c->next) {
|
||||||
c->x = i * gw;
|
c->x = i * gw;
|
||||||
|
|
|
@ -14,7 +14,7 @@ VERSION = 0.0
|
||||||
LIBS = -L${PREFIX}/lib -L/usr/lib -lc -lm -L${X11LIB} -lX11
|
LIBS = -L${PREFIX}/lib -L/usr/lib -lc -lm -L${X11LIB} -lX11
|
||||||
|
|
||||||
# Linux/BSD
|
# Linux/BSD
|
||||||
CFLAGS = -g -Wall -I. -I${PREFIX}/include -I/usr/include -I${X11INC} \
|
CFLAGS = -g -Wall -O2 -I. -I${PREFIX}/include -I/usr/include -I${X11INC} \
|
||||||
-DVERSION=\"${VERSION}\"
|
-DVERSION=\"${VERSION}\"
|
||||||
LDFLAGS = -g ${LIBS}
|
LDFLAGS = -g ${LIBS}
|
||||||
|
|
||||||
|
|
1
draw.c
1
draw.c
|
@ -39,6 +39,7 @@ draw(Display *dpy, Brush *b, Bool border, const char *text)
|
||||||
XSetForeground(dpy, b->gc, b->bg);
|
XSetForeground(dpy, b->gc, b->bg);
|
||||||
XFillRectangles(dpy, b->drawable, b->gc, &r, 1);
|
XFillRectangles(dpy, b->drawable, b->gc, &r, 1);
|
||||||
|
|
||||||
|
w = 0;
|
||||||
if(border)
|
if(border)
|
||||||
drawborder(dpy, b);
|
drawborder(dpy, b);
|
||||||
|
|
||||||
|
|
8
event.c
8
event.c
|
@ -186,11 +186,11 @@ propertynotify(XEvent *e)
|
||||||
if(ev->state == PropertyDelete)
|
if(ev->state == PropertyDelete)
|
||||||
return; /* ignore */
|
return; /* ignore */
|
||||||
|
|
||||||
if(ev->atom == wm_atom[WMProtocols]) {
|
|
||||||
c->proto = win_proto(c->win);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if((c = getclient(ev->window))) {
|
if((c = getclient(ev->window))) {
|
||||||
|
if(ev->atom == wm_atom[WMProtocols]) {
|
||||||
|
c->proto = win_proto(c->win);
|
||||||
|
return;
|
||||||
|
}
|
||||||
switch (ev->atom) {
|
switch (ev->atom) {
|
||||||
default: break;
|
default: break;
|
||||||
case XA_WM_TRANSIENT_FOR:
|
case XA_WM_TRANSIENT_FOR:
|
||||||
|
|
5
util.c
5
util.c
|
@ -126,13 +126,14 @@ pipe_spawn(char *buf, unsigned int len, Display *dpy, char *argv[])
|
||||||
perror(" failed");
|
perror(" failed");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
n = 0;
|
l = n = 0;
|
||||||
close(pfd[1]);
|
close(pfd[1]);
|
||||||
while(l > n) {
|
while(n < len) {
|
||||||
if((l = read(pfd[0], buf + n, len - n)) < 1)
|
if((l = read(pfd[0], buf + n, len - n)) < 1)
|
||||||
break;
|
break;
|
||||||
n += l;
|
n += l;
|
||||||
}
|
}
|
||||||
|
while(l > n);
|
||||||
close(pfd[0]);
|
close(pfd[0]);
|
||||||
buf[n < len ? n : len - 1] = 0;
|
buf[n < len ? n : len - 1] = 0;
|
||||||
}
|
}
|
||||||
|
|
5
wm.c
5
wm.c
|
@ -95,13 +95,12 @@ win_property(Window w, Atom a, Atom t, long l, unsigned char **prop)
|
||||||
int
|
int
|
||||||
win_proto(Window w)
|
win_proto(Window w)
|
||||||
{
|
{
|
||||||
Atom *protocols;
|
unsigned char *protocols;
|
||||||
long res;
|
long res;
|
||||||
int protos = 0;
|
int protos = 0;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
res = win_property(w, wm_atom[WMProtocols], XA_ATOM, 20L,
|
res = win_property(w, wm_atom[WMProtocols], XA_ATOM, 20L, &protocols);
|
||||||
((unsigned char **) &protocols));
|
|
||||||
if(res <= 0) {
|
if(res <= 0) {
|
||||||
return protos;
|
return protos;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue