Override QMainWindow::menuBar() in LyX GuiView class on Mac OSX.

This fixes the issue with missing menu entry for "Insert Branch <branch name>".
This commit is contained in:
Stephan Witt 2014-01-26 18:40:23 +01:00
parent fa8e4906de
commit 535c9ea078
3 changed files with 19 additions and 7 deletions

View File

@ -425,13 +425,8 @@ GuiView::GuiView(int id)
// they are greyed out.
guiApp->setCurrentView(this);
#if defined(Q_WS_MACX)
static QMenuBar * qmb = new QMenuBar(0);
#else
QMenuBar * qmb = menuBar();
#endif
// Fill up the menu bar.
guiApp->menus().fillMenuBar(qmb, this, true);
guiApp->menus().fillMenuBar(menuBar(), this, true);
setCentralWidget(d.stack_widget_);
@ -533,6 +528,15 @@ QVector<GuiWorkArea*> GuiView::GuiViewPrivate::guiWorkAreas()
}
#if defined(Q_WS_MACX)
QMenuBar * GuiView::menuBar() const
{
static QMenuBar * globalMenuBar = new QMenuBar(0);
return globalMenuBar;
}
#endif
#if QT_VERSION >= 0x040400
void GuiView::processingThreadStarted()

View File

@ -137,6 +137,13 @@ public:
GuiToolbar * makeToolbar(ToolbarInfo const & tbinfo, bool newline);
void updateStatusBar();
#if defined(Q_WS_MACX)
// We have to share one menu bar, so we must create a menu bar that does not have a parent.
// To enforce this we override the QMainWindow::menuBar() implementation.
// See https://bugreports.qt-project.org/browse/QTBUG-25399
QMenuBar *menuBar() const;
#endif
/// updates the possible layouts selectable
void updateLayoutList();
void updateToolbars();

View File

@ -55,8 +55,9 @@ What's new
* USER INTERFACE
Fixed python call in listerrors script.
- Fixed python call in listerrors script.
- Fix the missing menu entry for "Insert Branch <branch name>".
* DOCUMENTATION AND LOCALIZATION