summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-06-06 14:33:04 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-06-06 14:33:04 (GMT)
commitb83cadfc3a8edb2769981c3774a1b9aee0608ec7 (patch)
tree0f8aeca7951a2f396703775a0c511cf6d3429d58 /src/gui
parent6783649cd1b3d50febf74f3d1a24e198973c7b21 (diff)
parent40191387a77552b2ba6df547b87de040e126220a (diff)
downloadQt-b83cadfc3a8edb2769981c3774a1b9aee0608ec7.zip
Qt-b83cadfc3a8edb2769981c3774a1b9aee0608ec7.tar.gz
Qt-b83cadfc3a8edb2769981c3774a1b9aee0608ec7.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: Close context menus during orientation change. Have -small-screen enabled in certain examples on Symbian always.
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/kernel/qapplication_s60.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index 6d1b96f..d3b0e99 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -2243,6 +2243,7 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent
#if defined(Q_SYMBIAN_SUPPORTS_MULTIPLE_SCREENS)
case EEventDisplayChanged:
#endif
+ {
if (callSymbianEventFilters(symbianEvent))
return 1;
if (S60)
@@ -2254,6 +2255,12 @@ int QApplicationPrivate::symbianProcessWsEvent(const QSymbianEvent *symbianEvent
QResizeEvent e(qt_desktopWidget->size(), oldSize);
QApplication::sendEvent(qt_desktopWidget, &e);
}
+ // Close non-native QMenus (that should act like context menus, i.e. close
+ // automatically when the orientation changes).
+ QMenu *activeMenu = qobject_cast<QMenu *>(QApplication::activePopupWidget());
+ if (activeMenu)
+ activeMenu->close();
+ }
return 0; // Propagate to CONE
case EEventWindowVisibilityChanged:
if (controlInMap) {