- XftDrawRect(xw.xft_draw, bg, winx, winy, width, xw.ch);
- XftDrawStringUtf8(xw.xft_draw, fg, font->xft_set, winx,
+ /* Intelligent cleaning up of the borders. */
+ if(x == 0) {
+ xclear(0, (y == 0)? 0 : winy, borderpx,
+ winy + xw.ch + (y == term.row-1)? xw.h : 0);
+ }
+ if(x + charlen >= term.col-1) {
+ xclear(winx + width, (y == 0)? 0 : winy, xw.w,
+ (y == term.row-1)? xw.h : (winy + xw.ch));
+ }
+ if(y == 0)
+ xclear(winx, 0, winx + width, borderpx);
+ if(y == term.row-1)
+ xclear(winx, winy + xw.ch, winx + width, xw.h);
+
+ XftDrawRect(xw.draw, bg, winx, winy, width, xw.ch);
+ XftDrawStringUtf8(xw.draw, fg, font->set, winx,