--- rxvt-unicode/src/screen.C 2007/12/14 02:10:33 1.287 +++ rxvt-unicode/src/screen.C 2007/12/23 02:43:55 1.292 @@ -3,7 +3,7 @@ *---------------------------------------------------------------------------* * * Copyright (c) 1997-2001 Geoff Wing - * Copyright (c) 2003-2006 Marc Lehmann + * Copyright (c) 2003-2007 Marc Lehmann * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -598,14 +598,14 @@ */ void rxvt_term::scr_rendition (int set, int style) NOTHROW - { - if (set) - rstyle |= style; - else if (style == ~RS_None) - rstyle = DEFAULT_RSTYLE; - else - rstyle &= ~style; - } +{ + if (set) + rstyle |= style; + else if (style == ~RS_None) + rstyle = DEFAULT_RSTYLE; + else + rstyle &= ~style; +} /* ------------------------------------------------------------------------- */ /* @@ -1874,6 +1874,7 @@ { rvideo_bell = false; scr_rvideo_mode (rvideo_mode); + refresh_check (); } #endif @@ -1905,7 +1906,7 @@ { rvideo_bell = true; scr_rvideo_mode (rvideo_mode); - display->flush (); + flush (); bell_ev.start (VISUAL_BELL_DURATION); } @@ -2265,8 +2266,7 @@ bool invert = rend & RS_RVid; #ifndef NO_BOLD_UNDERLINE_REVERSE - if (rend & RS_Bold - && fore == Color_fg) + if (rend & RS_Bold && fore == Color_fg) { if (ISSET_PIXCOLOR (Color_BD)) fore = Color_BD; @@ -2276,8 +2276,7 @@ # endif } - if (rend & RS_Italic - && fore == Color_fg) + if (rend & RS_Italic && fore == Color_fg) { if (ISSET_PIXCOLOR (Color_IT)) fore = Color_IT; @@ -2477,9 +2476,11 @@ #ifdef HAVE_BG_PIXMAP bgPixmap.apply (); #else + XSetWindowBackground (dpy, parent[0], pix_colors[Color_border]); XClearWindow (dpy, parent[0]); XSetWindowBackground (dpy, vt, pix_colors[Color_bg]); + # if HAVE_SCROLLBARS if (scrollBar.win) { @@ -2488,11 +2489,12 @@ scrollbar_show (0); } # endif + scr_clear (); scr_touch (true); want_refresh = 1; -#endif +#endif } /* ------------------------------------------------------------------------- */ @@ -2923,6 +2925,8 @@ if (display->selection_owner == this) display->selection_owner = 0; + + flush (); } /* ------------------------------------------------------------------------- */