diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2011-05-02 10:05:31 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2011-05-02 10:05:31 (GMT) |
commit | c97917179c633fecd7c92180482ace941829ba49 (patch) | |
tree | 600801255738cc4451d6aa4f6227739aae90b34a /src | |
parent | 43503e38d91c0e8375c2d5993de201419ba854ec (diff) | |
parent | d4fd21f746b536eaddbdd7a07f1d717ef18278e7 (diff) | |
download | Qt-c97917179c633fecd7c92180482ace941829ba49.zip Qt-c97917179c633fecd7c92180482ace941829ba49.tar.gz Qt-c97917179c633fecd7c92180482ace941829ba49.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:
Fix trailing whitespaces
Fix for native child widget performance issue.
Diffstat (limited to 'src')
-rw-r--r-- | src/opengl/qwindowsurface_gl.cpp | 11 | ||||
-rw-r--r-- | src/openvg/qwindowsurface_vg.cpp | 11 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/opengl/qwindowsurface_gl.cpp b/src/opengl/qwindowsurface_gl.cpp index b056caa..7c41bb9 100644 --- a/src/opengl/qwindowsurface_gl.cpp +++ b/src/opengl/qwindowsurface_gl.cpp @@ -604,6 +604,17 @@ void QGLWindowSurface::flush(QWidget *widget, const QRegion &rgn, const QPoint & if (!hasPartialUpdateSupport() && !d_ptr->did_paint) return; +#ifdef Q_OS_SYMBIAN + if (window() != widget) { + // For performance reasons we don't support + // flushing native child widgets on Symbian. + // It breaks overlapping native child widget + // rendering in some cases but we prefer performance. + return; + } +#endif + + QWidget *parent = widget->internalWinId() ? widget : widget->nativeParentWidget(); Q_ASSERT(parent); diff --git a/src/openvg/qwindowsurface_vg.cpp b/src/openvg/qwindowsurface_vg.cpp index 9ce7f9a..5fb28ac 100644 --- a/src/openvg/qwindowsurface_vg.cpp +++ b/src/openvg/qwindowsurface_vg.cpp @@ -79,6 +79,17 @@ QPaintDevice *QVGWindowSurface::paintDevice() void QVGWindowSurface::flush(QWidget *widget, const QRegion ®ion, const QPoint &offset) { Q_UNUSED(offset); + +#ifdef Q_OS_SYMBIAN + if (window() != widget) { + // For performance reasons we don't support + // flushing native child widgets on Symbian. + // It breaks overlapping native child widget + // rendering in some cases but we prefer performance. + return; + } +#endif + QWidget *parent = widget->internalWinId() ? widget : widget->nativeParentWidget(); d_ptr->endPaint(parent, region); } |