--- rxvt-unicode/src/rxvtperl.xs 2012/06/07 09:34:51 1.179 +++ rxvt-unicode/src/rxvtperl.xs 2012/06/07 12:56:27 1.180 @@ -2090,11 +2090,11 @@ #if HAVE_BG_PIXMAP void -rxvt_term::set_background (rxvt_img *img) +rxvt_term::set_background (rxvt_img *img, bool border = false) CODE: THIS->bg_destroy (); THIS->bg_pixmap = None; - THIS->bg_flags &= ~(rxvt_term::BG_NEEDS_REFRESH | rxvt_term::BG_INHIBIT_RENDER); + THIS->bg_flags &= ~(rxvt_term::BG_NEEDS_REFRESH | rxvt_term::BG_INHIBIT_RENDER | rxvt_term::BG_IS_TRANSPARENT); if (img) // TODO: cannot be false { @@ -2103,6 +2103,10 @@ delete img; THIS->bg_pixmap = img2->steal (); THIS->bg_flags |= rxvt_term::BG_NEEDS_REFRESH | rxvt_term::BG_INHIBIT_RENDER; + + if (!border) + THIS->bg_flags |= rxvt_term::BG_IS_TRANSPARENT; + THIS->bg_valid_since = ev::now (); // TODO: extra bloat }