diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-01-15 15:38:38 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-01-15 15:38:38 (GMT) |
commit | ab124ac4c66cbfb22e8f25b5e77c4e7564acdd89 (patch) | |
tree | 9804bfa5c638b433819164c98116bc645138d24e /src/gui/painting | |
parent | 4c9e8b781eca47d6cfde686b360e447f620898fd (diff) | |
parent | 741bcdc965d3e29bf70fd82b206a494ed1ca0752 (diff) | |
download | Qt-ab124ac4c66cbfb22e8f25b5e77c4e7564acdd89.zip Qt-ab124ac4c66cbfb22e8f25b5e77c4e7564acdd89.tar.gz Qt-ab124ac4c66cbfb22e8f25b5e77c4e7564acdd89.tar.bz2 |
Merge branch '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.6-integration
* '4.6' of scm.dev.nokia.troll.no:qt/qt-s60-public:
Enable surface transparency support on Symbian^4.
Improve the behavior of expose events on Symbian.
Diffstat (limited to 'src/gui/painting')
-rw-r--r-- | src/gui/painting/qwindowsurface_s60.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gui/painting/qwindowsurface_s60.cpp b/src/gui/painting/qwindowsurface_s60.cpp index b8eaead..b41dc2c 100644 --- a/src/gui/painting/qwindowsurface_s60.cpp +++ b/src/gui/painting/qwindowsurface_s60.cpp @@ -145,10 +145,12 @@ QImage* QS60WindowSurface::buffer(const QWidget *widget) void QS60WindowSurface::flush(QWidget *widget, const QRegion ®ion, const QPoint &) { - const QVector<QRect> subRects = region.rects(); - for (int i = 0; i < subRects.count(); ++i) { - TRect tr = qt_QRect2TRect(subRects[i]); + QWExtra *extra = widget->d_func()->extraData(); + if (extra && !extra->inExpose) { + extra->inExpose = true; // Prevent DrawNow() from calling syncBackingStore() again + TRect tr = qt_QRect2TRect(region.boundingRect()); widget->winId()->DrawNow(tr); + extra->inExpose = false; } } |