}
#endif
- if (!back_rendered)
- XftDrawRect (d2, &term->pix_colors[bg < 0 ? Color_bg : bg].c, 0, 0, w, h);
+ if (bg >= 0 && !back_rendered)
+ XftDrawRect (d2, &term->pix_colors[bg].c, 0, 0, w, h);
XftDrawGlyphSpec (d2, &term->pix_colors[fg].c, f, enc, ep - enc);
XCopyArea (disp, d2, d, gc, 0, 0, w, h, x, y);
bool operator == (const rxvt_color &b) const { return Pixel (*this) == Pixel (b); }
bool operator != (const rxvt_color &b) const { return Pixel (*this) != Pixel (b); }
+ bool is_opaque () const
+ {
+#if XFT
+ //TODO: only supports 24 bit truecolour
+ return c.color.alpha < 0xff00;
+#else
+ return 1;
+#endif
+ }
+
bool alloc (rxvt_screen *screen, const rgba &color);
void free (rxvt_screen *screen);