From f56eb1958726097b75ea13370188a9d8d2031591 Mon Sep 17 00:00:00 2001 From: gotmor Date: Sat, 9 Jun 2007 10:17:43 +0000 Subject: reduce flicker git-svn-id: http://dzen.googlecode.com/svn/trunk@76 f2baff5b-bf2c-0410-a398-912abdc3d8b2 --- draw.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'draw.c') diff --git a/draw.c b/draw.c index ed6ade3..c98ae77 100644 --- a/draw.c +++ b/draw.c @@ -19,7 +19,7 @@ textnw(const char *text, unsigned int len) { } -void +void drawtext(const char *text, int reverse, int line, int align) { int x, y, w, h; static char buf[1024]; @@ -30,10 +30,12 @@ drawtext(const char *text, int reverse, int line, int align) { mgc = reverse ? dzen.gc : dzen.rgc; + if(line == -1) /* title window */ XFillRectangles(dzen.dpy, dzen.title_win.drawable, mgc, &r, 1); else /* slave window */ - XFillRectangles(dzen.dpy, dzen.slave_win.drawable, mgc, &r, 1); + XFillRectangles(dzen.dpy, dzen.slave_win.drawable[line], mgc, &r, 1); + if(!text) return; @@ -77,10 +79,10 @@ drawtext(const char *text, int reverse, int line, int align) { mgc = reverse ? dzen.rgc : dzen.gc; if(dzen.font.set) { if(line == -1) - XmbDrawString(dzen.dpy, dzen.title_win.drawable, dzen.font.set, + XmbDrawString(dzen.dpy, dzen.title_win.drawable, dzen.font.set, mgc, x, y, buf, len); else - XmbDrawString(dzen.dpy, dzen.slave_win.drawable, dzen.font.set, + XmbDrawString(dzen.dpy, dzen.slave_win.drawable[line], dzen.font.set, mgc, x, y, buf, len); } else { @@ -88,7 +90,7 @@ drawtext(const char *text, int reverse, int line, int align) { XChangeGC(dzen.dpy, mgc, GCForeground | GCFont, &gcv); if(line != -1) - XDrawString(dzen.dpy, dzen.slave_win.drawable, + XDrawString(dzen.dpy, dzen.slave_win.drawable[line], mgc, x, y, buf, len); else XDrawString(dzen.dpy, dzen.title_win.drawable, -- cgit v1.2.3-54-g00ecf