summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-10 13:05:26 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-10 13:05:26 (GMT)
commitb9f676f68cffdd2b5fe2ea68f9eca65947e0fbfe (patch)
tree41d17b69f5db9c98cf0ace190014319fe6ab8946 /src/gui/widgets
parentf74029e286e97067ac39086955481bf979af69dc (diff)
parent238528f67922d74bb951dae1a4a6a3745ce8b178 (diff)
downloadQt-b9f676f68cffdd2b5fe2ea68f9eca65947e0fbfe.zip
Qt-b9f676f68cffdd2b5fe2ea68f9eca65947e0fbfe.tar.gz
Qt-b9f676f68cffdd2b5fe2ea68f9eca65947e0fbfe.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Incorrect property setter generated by dumpcpp for Microsoft Word 2007. Cocoa: Implement our own NSApplication subclass Cocoa: Menu in menubar stays highlighted
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/qmenu_mac.mm15
-rw-r--r--src/gui/widgets/qmenubar_p.h1
2 files changed, 15 insertions, 1 deletions
diff --git a/src/gui/widgets/qmenu_mac.mm b/src/gui/widgets/qmenu_mac.mm
index 658a020..99c550f 100644
--- a/src/gui/widgets/qmenu_mac.mm
+++ b/src/gui/widgets/qmenu_mac.mm
@@ -2030,6 +2030,18 @@ void qt_mac_clear_menubar()
*/
bool QMenuBar::macUpdateMenuBar()
{
+#ifdef QT_MAC_USE_COCOA
+ QMacCocoaAutoReleasePool pool;
+ if (!qt_cocoaPostMessage(getMenuLoader(), @selector(qtUpdateMenubar)))
+ return QMenuBarPrivate::macUpdateMenuBarImmediatly();
+ return true;
+#else
+ return QMenuBarPrivate::macUpdateMenuBarImmediatly();
+#endif
+}
+
+bool QMenuBarPrivate::macUpdateMenuBarImmediatly()
+{
bool ret = false;
cancelAllMenuTracking();
QWidget *w = findWindowThatShouldDisplayMenubar();
@@ -2095,8 +2107,9 @@ bool QMenuBar::macUpdateMenuBar()
}
}
- if(!ret)
+ if (!ret) {
qt_mac_clear_menubar();
+ }
return ret;
}
diff --git a/src/gui/widgets/qmenubar_p.h b/src/gui/widgets/qmenubar_p.h
index f2e5357..819aee4 100644
--- a/src/gui/widgets/qmenubar_p.h
+++ b/src/gui/widgets/qmenubar_p.h
@@ -196,6 +196,7 @@ public:
return 0;
}
} *mac_menubar;
+ static bool macUpdateMenuBarImmediatly();
bool macWidgetHasNativeMenubar(QWidget *widget);
void macCreateMenuBar(QWidget *);
void macDestroyMenuBar();