dwm

my fork of dwm
Index Commits Files Refs README LICENSE
commit f8181f64e2ba4fca4e85036c48cf90a2151794fc
parent 0045ad87dfb32f35fc17b5b8942049cfe84d623c
Author: Anselm R. Garbe <arg@suckless.org>
Date:   Mon, 15 Jan 2007 12:04:25 +0100

removed drawclient and drawall (they performed useless operations/consumed useless cpu cycles)
Diffstat:
Mclient.c | 5+++--
Mdraw.c | 20--------------------
Mdwm.h | 2--
Mevent.c | 8+++-----
Mview.c | 1-
5 files changed, 6 insertions(+), 30 deletions(-)
diff --git a/client.c b/client.c
@@ -90,7 +90,7 @@ focus(Client *c) {
         sel = c;
         if(old) {
             grabbuttons(old, False);
-            drawclient(old);
+            XSetWindowBorder(dpy, old->win, dc.norm[ColBorder]);
         }
     }
     if(c) {
@@ -98,11 +98,12 @@ focus(Client *c) {
         c->snext = stack;
         stack = c;
         grabbuttons(c, True);
-        drawclient(c);
+        XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]);
         XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime);
     }
     else
         XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
+    drawstatus();
 }
 
 Client *
diff --git a/draw.c b/draw.c
@@ -98,15 +98,6 @@ drawtext(const char *text, unsigned long col[ColLast], Bool filledsquare, Bool e
 /* extern */
 
 void
-drawall(void) {
-    Client *c;
-
-    for(c = clients; c; c = getnext(c->next))
-        drawclient(c);
-    drawstatus();
-}
-
-void
 drawstatus(void) {
     int i, x;
 
@@ -137,17 +128,6 @@ drawstatus(void) {
     XSync(dpy, False);
 }
 
-void
-drawclient(Client *c) {
-    if(c == sel && issel) {
-        drawstatus();
-        XSetWindowBorder(dpy, c->win, dc.sel[ColBorder]);
-        return;
-    }
-    XSetWindowBorder(dpy, c->win, dc.norm[ColBorder]);
-    XSync(dpy, False);
-}
-
 unsigned long
 getcolor(const char *colstr) {
     Colormap cmap = DefaultColormap(dpy, screen);
diff --git a/dwm.h b/dwm.h
@@ -117,9 +117,7 @@ extern void updatetitle(Client *c);		/* update the name of c */
 extern void unmanage(Client *c);        /* destroy c */
 
 /* draw.c */
-extern void drawall(void);            /* draw all visible client titles and the bar */
 extern void drawstatus(void);            /* draw the bar */
-extern void drawclient(Client *c);        /* draw title and set border of c */
 extern unsigned long getcolor(const char *colstr);    /* return color of colstr */
 extern void setfont(const char *fontstr);    /* set the font for DC */
 extern unsigned int textw(const char *text);    /* return the width of text in px*/
diff --git a/event.c b/event.c
@@ -235,7 +235,6 @@ enternotify(XEvent *e) {
     else if(ev->window == root) {
         issel = True;
         XSetInputFocus(dpy, root, RevertToPointerRoot, CurrentTime);
-        drawall();
     }
 }
 
@@ -272,10 +271,8 @@ static void
 leavenotify(XEvent *e) {
     XCrossingEvent *ev = &e->xcrossing;
 
-    if((ev->window == root) && !ev->same_screen) {
+    if((ev->window == root) && !ev->same_screen)
         issel = False;
-        drawall();
-    }
 }
 
 static void
@@ -329,7 +326,8 @@ propertynotify(XEvent *e) {
         }
         if(ev->atom == XA_WM_NAME || ev->atom == netatom[NetWMName]) {
             updatetitle(c);
-            drawclient(c);
+            if(c == sel)
+                drawstatus();
         }
     }
 }
diff --git a/view.c b/view.c
@@ -200,7 +200,6 @@ restack(void) {
             XLowerWindow(dpy, c->win);
         }
     }
-    drawall();
     XSync(dpy, False);
     while(XCheckMaskEvent(dpy, EnterWindowMask, &ev));
 }