ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/rxvtfont.C
(Generate patch)

Comparing rxvt-unicode/src/rxvtfont.C (file contents):
Revision 1.96 by root, Sat Feb 18 15:24:39 2006 UTC vs.
Revision 1.100 by root, Sat Mar 11 00:12:37 2006 UTC

1/*--------------------------------*-C-*---------------------------------* 1/*----------------------------------------------------------------------*
2 * File: rxvtfont.C 2 * File: rxvtfont.C
3 *----------------------------------------------------------------------* 3 *----------------------------------------------------------------------*
4 * Copyright (c) 2003-2006 Marc Lehmann <pcg@goof.com> 4 * Copyright (c) 2003-2006 Marc Lehmann <pcg@goof.com>
5 * - original version. 5 * - original version.
6 * 6 *
1274 dTermGC; 1274 dTermGC;
1275 1275
1276 int w = term->fwidth * len; 1276 int w = term->fwidth * len;
1277 int h = term->fheight; 1277 int h = term->fheight;
1278 1278
1279 bool buffered = bg >= 0 // we don't use a transparent bg
1280#ifndef FORCE_UNBUFFERED_XFT
1281# if defined(XPM_BACKGROUND) || defined(TRANSPARENT)
1279 bool buffered = !term->am_transparent // we aren't transparent 1282 || !term->am_transparent // we aren't transparent
1280 || term->am_pixmap_trans // we have a pixmap 1283 || term->am_pixmap_trans // we have a pixmap
1281 || bg >= 0; // we don't use a transparent bg 1284# endif
1285#endif
1286 ;
1282 1287
1283 // cut trailing spaces 1288 // cut trailing spaces
1284 while (len && text [len - 1] == ' ') 1289 while (len && text [len - 1] == ' ')
1285 len--; 1290 len--;
1286 1291
1317 { 1322 {
1318 if (ep != enc) 1323 if (ep != enc)
1319 { 1324 {
1320 rxvt_drawable &d2 = d.screen->scratch_drawable (w, h); 1325 rxvt_drawable &d2 = d.screen->scratch_drawable (w, h);
1321 1326
1327#if defined(XPM_BACKGROUND) || defined(TRANSPARENT)
1322 if (bg < 0 && term->am_pixmap_trans) 1328 if (bg < 0 && term->am_pixmap_trans)
1323 XCopyArea (disp, term->pixmap, d2, gc, x, y, w, h, 0, 0); 1329 XCopyArea (disp, term->pixmap, d2, gc, x, y, w, h, 0, 0);
1324 else if (bg < 0 && term->bgPixmap.pixmap) 1330 else if (bg < 0 && term->bgPixmap.pixmap)
1325 { 1331 {
1326 XGCValues gcv; 1332 XGCValues gcv;
1337 XFillRectangle (disp, d2, gc2, 0, 0, w, h); 1343 XFillRectangle (disp, d2, gc2, 0, 0, w, h);
1338 1344
1339 XFreeGC (disp, gc2); 1345 XFreeGC (disp, gc2);
1340 } 1346 }
1341 else 1347 else
1348#endif
1342 XftDrawRect (d2, &term->pix_colors[bg].c, 0, 0, w, h); 1349 XftDrawRect (d2, &term->pix_colors[bg].c, 0, 0, w, h);
1343 1350
1344 XftDrawGlyphSpec (d2, &term->pix_colors[fg].c, f, enc, ep - enc); 1351 XftDrawGlyphSpec (d2, &term->pix_colors[fg].c, f, enc, ep - enc);
1345 XCopyArea (disp, d2, d, gc, 0, 0, w, h, x, y); 1352 XCopyArea (disp, d2, d, gc, 0, 0, w, h, x, y);
1346 } 1353 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines