summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-12-29 21:13:55 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-12-29 21:13:55 (GMT)
commit9e26955ab926afe1bc3306d5f6fcab0c5dfe4db1 (patch)
tree9245f3d7551588e80cc35966dafc135cf7cd5627
parent08f963176b24c4c20a96717ddb2241ba1410b0a1 (diff)
parentef96a142f790152524248b4dd0f24e3126ef871e (diff)
downloadQt-9e26955ab926afe1bc3306d5f6fcab0c5dfe4db1.zip
Qt-9e26955ab926afe1bc3306d5f6fcab0c5dfe4db1.tar.gz
Qt-9e26955ab926afe1bc3306d5f6fcab0c5dfe4db1.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: Clear WSERV content when a native child receives an "expose"
-rw-r--r--src/gui/kernel/qapplication_s60.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index 181fcc7..691c02a 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -1071,6 +1071,14 @@ void QSymbianControl::Draw(const TRect& controlRect) const
Q_ASSERT(topExtra);
if (!topExtra->inExpose) {
topExtra->inExpose = true;
+ if (!qwidget->isWindow()) {
+ // If we get here, then it means we have a native child window
+ // Since no content should ever be painted to these windows, we
+ // erase them with a transparent brush when they get an expose.
+ CWindowGc &gc = SystemGc();
+ gc.SetBrushColor(TRgb(0, 0, 0, 0));
+ gc.Clear(controlRect);
+ }
QRect exposeRect = qt_TRect2QRect(controlRect);
qwidget->d_func()->syncBackingStore(exposeRect);
topExtra->inExpose = false;