- _im = XCreateImage(**display, info->visual(), info->depth(),
- ZPixmap, 0, NULL, _size.x(), _size.y(), 32, 0);
-
- _pm = XCreatePixmap(**display, info->rootWindow(), _size.x(), _size.y(),
- info->depth());
-
- _xftdraw = XftDrawCreate(**display, _pm, info->visual(), info->colormap());
+ XFillRectangle(**display, _pixmap, color.gc(), 0, 0,
+ _size.width(), _size.height());
+
+ pixel32 val = (color.red() << default_red_shift) |
+ (color.green() << default_green_shift) |
+ (color.blue() << default_blue_shift);
+ for (unsigned int i = 0, s = _size.width() * _size.height(); i < s; ++i)
+ _pixel_data[i] = val;