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

Comparing rxvt-unicode/src/screen.C (file contents):
Revision 1.21 by pcg, Sat Jan 31 00:20:21 2004 UTC vs.
Revision 1.23 by pcg, Sat Jan 31 02:31:17 2004 UTC

1871 { 1871 {
1872 clearfirst = clearlast = 1; 1872 clearfirst = clearlast = 1;
1873 refresh_type &= ~REFRESH_BOUNDS; 1873 refresh_type &= ~REFRESH_BOUNDS;
1874 } 1874 }
1875 1875
1876#if defined(XPM_BACKGROUND) 1876#ifdef XPM_BACKGROUND
1877 must_clear |= (bgPixmap.pixmap != None); 1877 must_clear |= (bgPixmap.pixmap != None);
1878#endif 1878#endif
1879#if defined(TRANSPARENT) 1879#ifdef TRANSPARENT
1880 must_clear |= ((Options & Opt_transparent) && am_transparent); 1880 must_clear |= ((Options & Opt_transparent) && am_transparent);
1881#endif 1881#endif
1882 ocrow = oldcursor.row; /* is there an old outline cursor on screen? */ 1882 ocrow = oldcursor.row; /* is there an old outline cursor on screen? */
1883 1883
1884 /* 1884 /*
2162 /* 2162 /*
2163 * Actually do the drawing of the string here 2163 * Actually do the drawing of the string here
2164 */ 2164 */
2165 rxvt_font *font = (*TermWin.fontset)[fid]; 2165 rxvt_font *font = (*TermWin.fontset)[fid];
2166 2166
2167 if (back == fore)
2168 font->clear_rect (xpixel, ypixel,
2169 TermWin.fwidth * count, TermWin.fheight,
2170 back);
2167 if (back == Color_bg) 2171 else if (back == Color_bg)
2168 { 2172 {
2169 if (must_clear) 2173 if (must_clear)
2170 { 2174 {
2175 CLEAR_CHARS (xpixel, ypixel, count);
2176
2171 for (i = 0; i < count; i++) /* don't draw empty strings */ 2177 for (i = 0; i < count; i++) /* don't draw empty strings */
2172 if (text[i] != ' ') 2178 if (text[i] != ' ')
2173 { 2179 {
2174 font->draw (xpixel, ypixel, text, count, fore, -1); 2180 font->draw (xpixel, ypixel, text, count, fore, -1);
2175 goto nodraw; 2181 break;
2176 } 2182 }
2177
2178 CLEAR_CHARS (xpixel, ypixel, count);
2179nodraw: ;
2180 } 2183 }
2181 else 2184 else
2182 font->draw (xpixel, ypixel, text, count, fore, Color_bg); 2185 font->draw (xpixel, ypixel, text, count, fore, Color_bg);
2183 } 2186 }
2184 else 2187 else

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines