Introduction
Introduction Statistics Contact Development Disclaimer Help
tsimplified ISVISBLE and nexttiled - dwm - [fork] customized build of dwm, the …
git clone git://src.adamsgaard.dk/dwm
Log
Files
Refs
README
LICENSE
---
commit 913333f51840d942bdde891eb2fb3c7f66b83db1
parent d702f392742afee69a33fea91494acf8b7153c88
Author: Anselm R Garbe <[email protected]>
Date: Tue, 23 Jun 2009 17:20:33 +0100
simplified ISVISBLE and nexttiled
Diffstat:
M dwm.c | 39 +++++++++++++++--------------…
1 file changed, 19 insertions(+), 20 deletions(-)
---
diff --git a/dwm.c b/dwm.c
t@@ -1,4 +1,3 @@
-/* TODO: cleanup nexttiled, ISVISIBLE, etc */
/* See LICENSE file for copyright and license details.
*
* dynamic window manager is designed like any other X client as well. It is
t@@ -45,7 +44,7 @@
#define BUTTONMASK (ButtonPressMask|ButtonReleaseMask)
#define CLEANMASK(mask) (mask & ~(numlockmask|LockMask))
#define INRECT(X,Y,RX,RY,RW,RH) ((X) >= (RX) && (X) < (RX) + (RW) && (Y) >= (R…
-#define ISVISIBLE(M, C) ((M) == (C->mon) && (C->tags & M->tagset[M->se…
+#define ISVISIBLE(C) ((C->tags & C->mon->tagset[C->mon->seltags]))
#define LENGTH(X) (sizeof X / sizeof X[0])
#define MAX(A, B) ((A) > (B) ? (A) : (B))
#define MIN(A, B) ((A) < (B) ? (A) : (B))
t@@ -189,7 +188,7 @@ static void mappingnotify(XEvent *e);
static void maprequest(XEvent *e);
static void monocle(Monitor *m);
static void movemouse(const Arg *arg);
-static Client *nexttiled(Monitor *m, Client *c);
+static Client *nexttiled(Client *c);
static void propertynotify(XEvent *e);
static void quit(const Arg *arg);
static void resize(Client *c, int x, int y, int w, int h);
t@@ -550,7 +549,7 @@ configurerequest(XEvent *e) {
c->y = sy + (sh / 2 - c->h / 2); /* center in …
if((ev->value_mask & (CWX|CWY)) && !(ev->value_mask & …
configure(c);
- if(ISVISIBLE((c->mon), c))
+ if(ISVISIBLE(c))
XMoveResizeWindow(dpy, c->win, c->x, c->y, c->…
}
else
t@@ -756,8 +755,8 @@ expose(XEvent *e) {
void
focus(Client *c) {
- if(!c || !ISVISIBLE((c->mon), c))
- for(c = selmon->stack; c && !ISVISIBLE(selmon, c); c = c->snex…
+ if(!c || !ISVISIBLE(c))
+ for(c = selmon->stack; c && !ISVISIBLE(c); c = c->snext);
if(selmon->sel && selmon->sel != c) {
grabbuttons(selmon->sel, False);
XSetWindowBorder(dpy, selmon->sel->win, dc.norm[ColBorder]);
t@@ -808,17 +807,17 @@ focusstack(const Arg *arg) {
if(!selmon->sel)
return;
if(arg->i > 0) {
- for(c = selmon->sel->next; c && !ISVISIBLE(selmon, c); c = c->…
+ for(c = selmon->sel->next; c && !ISVISIBLE(c); c = c->next);
if(!c)
- for(c = selmon->clients; c && !ISVISIBLE(selmon, c); c…
+ for(c = selmon->clients; c && !ISVISIBLE(c); c = c->ne…
}
else {
for(i = selmon->clients; i != selmon->sel; i = i->next)
- if(ISVISIBLE(selmon, i))
+ if(ISVISIBLE(i))
c = i;
if(!c)
for(; i; i = i->next)
- if(ISVISIBLE(selmon, i))
+ if(ISVISIBLE(i))
c = i;
}
if(c) {
t@@ -1102,7 +1101,7 @@ void
monocle(Monitor *m) {
Client *c;
- for(c = nexttiled(m, selmon->clients); c; c = nexttiled(m, c->next))
+ for(c = nexttiled(m->clients); c; c = nexttiled(c->next))
resize(c, m->wx, m->wy, m->ww - 2 * c->bw, m->wh - 2 * c->bw);
}
t@@ -1158,9 +1157,9 @@ movemouse(const Arg *arg) {
}
Client *
-nexttiled(Monitor *m, Client *c) {
+nexttiled(Client *c) {
// TODO: m handling
- for(; c && (c->isfloating || !ISVISIBLE(m, c)); c = c->next);
+ for(; c && (c->isfloating || !ISVISIBLE(c)); c = c->next);
return c;
}
t@@ -1280,7 +1279,7 @@ restack(Monitor *m) {
wc.stack_mode = Below;
wc.sibling = m->barwin;
for(c = m->stack; c; c = c->snext)
- if(!c->isfloating && ISVISIBLE(m, c)) {
+ if(!c->isfloating && ISVISIBLE(c)) {
XConfigureWindow(dpy, c->win, CWSibling|CWStac…
wc.sibling = c->win;
}
t@@ -1432,7 +1431,7 @@ void
showhide(Client *c) {
if(!c)
return;
- if(ISVISIBLE((c->mon), c)) { /* show clients top down */
+ if(ISVISIBLE(c)) { /* show clients top down */
XMoveWindow(dpy, c->win, c->x, c->y);
if(!lt[c->mon->sellt]->arrange || c->isfloating)
resize(c, c->x, c->y, c->w, c->h);
t@@ -1504,12 +1503,12 @@ tile(Monitor *m) {
unsigned int i, n;
Client *c;
- for(n = 0, c = nexttiled(m, m->clients); c; c = nexttiled(m, c->next),…
+ for(n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++);
if(n == 0)
return;
/* master */
- c = nexttiled(m, m->clients);
+ c = nexttiled(m->clients);
mw = m->mfact * m->ww;
resize(c, m->wx, m->wy, (n == 1 ? m->ww : mw) - 2 * c->bw, m->wh - 2 *…
t@@ -1524,7 +1523,7 @@ tile(Monitor *m) {
if(h < bh)
h = m->wh;
- for(i = 0, c = nexttiled(m, c->next); c; c = nexttiled(m, c->next), i+…
+ for(i = 0, c = nexttiled(c->next); c; c = nexttiled(c->next), i++) {
resize(c, x, y, w - 2 * c->bw, /* remainder */ ((i + 1 == n)
? m->wy + m->wh - y - 2 * c->bw : h - 2 * c->bw));
if(h != m->wh)
t@@ -1883,8 +1882,8 @@ zoom(const Arg *arg) {
if(!lt[selmon->sellt]->arrange || lt[selmon->sellt]->arrange == monocl…
return;
- if(c == nexttiled(selmon, selmon->clients))
- if(!c || !(c = nexttiled(selmon, c->next)))
+ if(c == nexttiled(selmon->clients))
+ if(!c || !(c = nexttiled(c->next)))
return;
detach(c);
attach(c);
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.