diff -r ef0373b55136 -r 758a864f9613 src/gui/painting/qwindowsurface_qws.cpp --- a/src/gui/painting/qwindowsurface_qws.cpp Fri Sep 17 08:34:18 2010 +0300 +++ b/src/gui/painting/qwindowsurface_qws.cpp Mon Oct 04 01:19:32 2010 +0300 @@ -882,7 +882,11 @@ const QVector rects = rgn.rects(); const QColor blank = Qt::transparent; for (QVector::const_iterator it = rects.begin(); it != rects.end(); ++it) { - p.fillRect(*it, blank); + QRect r = *it; +#ifdef Q_BACKINGSTORE_SUBSURFACES + r.translate(painterOffset()); +#endif + p.fillRect(r, blank); } } QWSWindowSurface::beginPaint(rgn);