summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichał Zając <quintasan@kubuntu.org>2011-05-13 08:40:05 (GMT)
committerOswald Buddenhagen <oswald.buddenhagen@nokia.com>2011-05-13 08:41:13 (GMT)
commita45398677309ab905b69c599177b4c2951292b04 (patch)
tree4b28971260bfa000390480cb30187d6fb2c09729
parentdcbd920daf92d80302633f73dd8324437005a10e (diff)
downloadQt-a45398677309ab905b69c599177b4c2951292b04.zip
Qt-a45398677309ab905b69c599177b4c2951292b04.tar.gz
Qt-a45398677309ab905b69c599177b4c2951292b04.tar.bz2
X11: Keep the menubar inside the widgetbox window in toplevel mode
For now the appmenu protocol does not make it possible to associate a menubar with all application windows. This means in top level mode you can only reach the menubar when the widgetbox window is active. Since this is quite inconvenient, better not use the native menubar in this configuration and keep the menubar in the widgetbox window. Merge-request: 1229 Reviewed-by: denis
-rw-r--r--tools/designer/src/designer/qdesigner_workbench.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/designer/src/designer/qdesigner_workbench.cpp b/tools/designer/src/designer/qdesigner_workbench.cpp
index ffc4b8c..df679eb 100644
--- a/tools/designer/src/designer/qdesigner_workbench.cpp
+++ b/tools/designer/src/designer/qdesigner_workbench.cpp
@@ -410,6 +410,9 @@ void QDesignerWorkbench::switchToDockedMode()
switchToNeutralMode();
+#ifdef Q_WS_X11
+ QApplication::setAttribute(Qt::AA_DontUseNativeMenuBar, false);
+#endif
#ifndef Q_WS_MAC
QDesignerToolWindow *widgetBoxWrapper = widgetBoxToolWindow();
widgetBoxWrapper->action()->setVisible(true);
@@ -477,6 +480,14 @@ void QDesignerWorkbench::switchToTopLevelMode()
// The widget box is special, it gets the menubar and gets to be the main widget.
m_core->setTopLevel(widgetBoxWrapper);
+#ifdef Q_WS_X11
+ // For now the appmenu protocol does not make it possible to associate a
+ // menubar with all application windows. This means in top level mode you
+ // can only reach the menubar when the widgetbox window is active. Since
+ // this is quite inconvenient, better not use the native menubar in this
+ // configuration and keep the menubar in the widgetbox window.
+ QApplication::setAttribute(Qt::AA_DontUseNativeMenuBar, true);
+#endif
#ifndef Q_WS_MAC
widgetBoxWrapper->setMenuBar(m_globalMenuBar);
widgetBoxWrapper->action()->setVisible(false);