diff options
author | Liang Qi <liang.qi@nokia.com> | 2011-06-24 09:52:41 (GMT) |
---|---|---|
committer | Liang Qi <liang.qi@nokia.com> | 2011-06-24 09:52:41 (GMT) |
commit | cf2f72f4f61f3a9e0e7573379c33bb341eeba7be (patch) | |
tree | 06fbd459f62f87344e7db973a0a9f3050cece825 /src/gui/s60framework | |
parent | 164728f711136356a6c3482f762321b01c9d82dd (diff) | |
parent | 705b0f958a6071341b10cbd51917e1378356491b (diff) | |
download | Qt-cf2f72f4f61f3a9e0e7573379c33bb341eeba7be.zip Qt-cf2f72f4f61f3a9e0e7573379c33bb341eeba7be.tar.gz Qt-cf2f72f4f61f3a9e0e7573379c33bb341eeba7be.tar.bz2 |
Merge remote-tracking branch 'origin/4.7' into qt-4.8-from-4.7
Conflicts:
src/gui/image/qpixmap_raster_symbian.cpp
src/gui/image/qpixmapdatafactory.cpp
src/gui/painting/qgraphicssystem.cpp
src/gui/styles/qs60style.cpp
src/network/bearer/qnetworkconfigmanager_p.h
src/s60installs/bwins/QtGuiu.def
src/s60installs/bwins/QtOpenGLu.def
src/s60installs/bwins/QtOpenVGu.def
src/s60installs/eabi/QtGuiu.def
src/s60installs/eabi/QtOpenVGu.def
tests/auto/qnetworkproxyfactory/tst_qnetworkproxyfactory.cpp
Diffstat (limited to 'src/gui/s60framework')
-rw-r--r-- | src/gui/s60framework/qs60mainappui.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/gui/s60framework/qs60mainappui.cpp b/src/gui/s60framework/qs60mainappui.cpp index bfd1825..ec97f7b 100644 --- a/src/gui/s60framework/qs60mainappui.cpp +++ b/src/gui/s60framework/qs60mainappui.cpp @@ -316,7 +316,21 @@ TRect QS60MainAppUi::ApplicationRect() const */ void QS60MainAppUi::HandleScreenDeviceChangedL() { + // This function triggers AppUi relayout which also generates + // HandleStatusPaneSizeChange(). We don't want to handle + // status pane resizes at this point because it causes + // Qt window resize and thus EGL surface resize in the middle of + // incomplete layout process causing unnecessary overhead. + // To prevent status pane resize handling while layout is still + // in progress, we guard relayouting with handleStatusPaneResizeNotifications + // flag. QSymbianControl checks this flag before doing Qt window + // resize due to status pane change. + // Eventually when layout is ready, Symbian framework calls + // HandleResourceChangeL(KEikDynamicLayoutVariantSwitch) which triggers + // resize to Qt window and to its EGL surface. + S60->handleStatusPaneResizeNotifications = false; QS60MainAppUiBase::HandleScreenDeviceChangedL(); + S60->handleStatusPaneResizeNotifications = true; } /*! |