dwm

Extremely fast, small, and dynamic window manager for X
git clone git://git.janpasierb.com/dwm.git
Log | Files | Refs | README | LICENSE

commit a686c9ccd293efd543b84c137d91fbeb0f95a621
parent 9ca5c3b108dbda55c1ac9f068b631911f5685eeb
Author: Anselm R. Garbe <arg@suckless.org>
Date:   Fri,  2 Mar 2007 15:14:40 +0100

we don't need to set the font all the time
Diffstat:
Mdraw.c | 12+++---------
Mmain.c | 2++
2 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/draw.c b/draw.c @@ -95,7 +95,6 @@ drawtext(const char *text, unsigned long col[ColLast]) { int x, y, w, h; static char buf[256]; unsigned int len, olen; - XGCValues gcv; XRectangle r = { dc.x, dc.y, dc.w, dc.h }; XSetForeground(dpy, dc.gc, col[ColBG]); @@ -124,16 +123,11 @@ drawtext(const char *text, unsigned long col[ColLast]) { } if(w > dc.w) return; /* too long */ - gcv.foreground = col[ColFG]; - if(dc.font.set) { - XChangeGC(dpy, dc.gc, GCForeground, &gcv); + XSetForeground(dpy, dc.gc, col[ColFG]); + if(dc.font.set) XmbDrawString(dpy, dc.drawable, dc.font.set, dc.gc, x, y, buf, len); - } - else { - gcv.font = dc.font.xfont->fid; - XChangeGC(dpy, dc.gc, GCForeground | GCFont, &gcv); + else XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len); - } } unsigned int diff --git a/main.c b/main.c @@ -205,6 +205,8 @@ setup(void) { dc.drawable = XCreatePixmap(dpy, root, sw, bh, DefaultDepth(dpy, screen)); dc.gc = XCreateGC(dpy, root, 0, 0); XSetLineAttributes(dpy, dc.gc, 1, LineSolid, CapButt, JoinMiter); + if(!dc.font.set) + XSetFont(dpy, dc.gc, dc.font.xfont->fid); /* multihead support */ selscreen = XQueryPointer(dpy, root, &w, &w, &i, &i, &i, &i, &mask); }