certain fixes, though still a lot of the mutex stuff missing

This commit is contained in:
anselm@anselm1 2008-02-25 22:19:17 +00:00
parent a3d8c05a95
commit 2bfd3fffbf

10
dwm.c
View file

@ -560,10 +560,10 @@ drawbar(View *v) {
Client *c; Client *c;
dc.x = 0; dc.x = 0;
for(c = stack; c && !isvisible(c); c = c->snext); for(c = stack; c && (!isvisible(c) || getview(c) != v); c = c->snext);
for(i = 0; i < LENGTH(tags); i++) { for(i = 0; i < LENGTH(tags); i++) {
dc.w = textw(tags[i]); dc.w = textw(tags[i]);
if(seltags[i]) { if(seltags[i] && seltags[i] == v->id) {
drawtext(v, tags[i], dc.sel, isurgent(i)); drawtext(v, tags[i], dc.sel, isurgent(i));
drawsquare(v, c && c->tags[i], isoccupied(i), isurgent(i), dc.sel); drawsquare(v, c && c->tags[i], isoccupied(i), isurgent(i), dc.sel);
} }
@ -724,7 +724,7 @@ focus(Client *c) {
if(selview != v) if(selview != v)
drawbar(v); drawbar(v);
if(!c || (c && !isvisible(c))) if(!c || (c && !isvisible(c)))
for(c = stack; c && !isvisible(c); c = c->snext); for(c = stack; c && (!isvisible(c) || getview(c) != selview); c = c->snext);
if(sel && sel != c) { if(sel && sel != c) {
grabbuttons(sel, False); grabbuttons(sel, False);
XSetWindowBorder(dpy, sel->win, dc.norm[ColBorder]); XSetWindowBorder(dpy, sel->win, dc.norm[ColBorder]);
@ -1156,10 +1156,9 @@ viewat() {
XQueryPointer(dpy, root, &win, &win, &x, &y, &i, &i, &mask); XQueryPointer(dpy, root, &win, &win, &x, &y, &i, &i, &mask);
for(i = 0; i < nviews; i++) { for(i = 0; i < nviews; i++) {
if((x >= views[i].x && x < views[i].x + views[i].w) if((x >= views[i].x && x < views[i].x + views[i].w)
&& (y >= views[i].y && y < views[i].y + views[i].h)) { && (y >= views[i].y && y < views[i].y + views[i].h))
return &views[i]; return &views[i];
} }
}
return NULL; return NULL;
} }
@ -1761,7 +1760,6 @@ tile(View *v) {
else else
nh = th - 2 * c->border; nh = th - 2 * c->border;
} }
fprintf(stderr, "tile %d %d %d %d\n", nx, ny, nw, nh);
resize(c, nx, ny, nw, nh, RESIZEHINTS); resize(c, nx, ny, nw, nh, RESIZEHINTS);
if((RESIZEHINTS) && ((c->h < bh) || (c->h > nh) || (c->w < bh) || (c->w > nw))) if((RESIZEHINTS) && ((c->h < bh) || (c->h > nh) || (c->w < bh) || (c->w > nw)))
/* client doesn't accept size constraints */ /* client doesn't accept size constraints */