commit 00a7f002dbef8cefdeda07aa92761887024d6ed3
Author: Stephan Witt <[email protected]>
Date: Wed Jan 29 19:20:01 2014 +0100
Fix the missing dynamic menus in general and restore correctly from
fullscreen.
diff --git a/src/frontends/qt4/GuiView.cpp b/src/frontends/qt4/GuiView.cpp
index 6195195..095c427 100644
--- a/src/frontends/qt4/GuiView.cpp
+++ b/src/frontends/qt4/GuiView.cpp
@@ -528,7 +528,7 @@ QVector<GuiWorkArea*>
GuiView::GuiViewPrivate::guiWorkAreas()
}
-#if defined(Q_WS_MACX)
+#if defined(Q_WS_MACX) && defined(QT_MAC_USE_COCOA)
QMenuBar * GuiView::menuBar() const
{
static QMenuBar * globalMenuBar = new QMenuBar(0);
diff --git a/src/frontends/qt4/GuiView.h b/src/frontends/qt4/GuiView.h
index 02199c1..b5ba3d9 100644
--- a/src/frontends/qt4/GuiView.h
+++ b/src/frontends/qt4/GuiView.h
@@ -137,7 +137,7 @@ public:
GuiToolbar * makeToolbar(ToolbarInfo const & tbinfo, bool newline);
void updateStatusBar();
-#if defined(Q_WS_MACX)
+#if defined(Q_WS_MACX) && defined(QT_MAC_USE_COCOA)
// 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
diff --git a/src/frontends/qt4/Menus.cpp b/src/frontends/qt4/Menus.cpp
index 9e90147..4c44be5 100644
--- a/src/frontends/qt4/Menus.cpp
+++ b/src/frontends/qt4/Menus.cpp
@@ -1355,6 +1355,7 @@ void MenuDefinition::expandBranches(Buffer const * buf)
BufferParams const & master_params = buf->masterBuffer()->params();
BufferParams const & params = buf->params();
if (params.branchlist().empty() && master_params.branchlist().empty() )
{
+ LYXERR(Debug::GUI, "No Branches set for Document");
add(MenuItem(MenuItem::Help, qt_("No Branches Set for
Document!")));
return;
}
@@ -1368,6 +1369,7 @@ void MenuDefinition::expandBranches(Buffer const * buf)
label = convert<docstring>(ii) + ". " + label
+ char_type('|') + convert<docstring>(ii);
}
+ LYXERR(Debug::GUI, "Add item for branch " << label);
addWithStatusCheck(MenuItem(MenuItem::Command, toqstr(label),
FuncRequest(LFUN_BRANCH_INSERT,
cit->branch())));
@@ -1737,24 +1739,25 @@ void Menus::Impl::macxMenuBarInit(GuiView * view,
QMenuBar * qmb)
// the special menu for Menus. Fill it up only once.
if (mac_special_menu_.size() == 0) {
+ LYXERR(Debug::GUI, "Prepare Mac OS X special menu");
for (size_t i = 0 ; i < num_entries ; ++i) {
FuncRequest const func(entries[i].action,
from_utf8(entries[i].arg));
mac_special_menu_.add(MenuItem(MenuItem::Command,
entries[i].label, func));
}
-
- // add the entries to a QMenu that will eventually be empty
- // and therefore invisible.
- QMenu * qMenu = qmb->addMenu("special");
- MenuDefinition::const_iterator cit = mac_special_menu_.begin();
- MenuDefinition::const_iterator end = mac_special_menu_.end();
- for (size_t i = 0 ; cit != end ; ++cit, ++i) {
- Action * action = new Action(view, QIcon(),
cit->label(),
- cit->func(), QString(), qMenu);
- action->setMenuRole(entries[i].role);
- qMenu->addAction(action);
- }
+ }
+ // add the entries to a QMenu that will eventually be empty
+ // and therefore invisible.
+ QMenu * qMenu = qmb->addMenu("special");
+ MenuDefinition::const_iterator cit = mac_special_menu_.begin();
+ MenuDefinition::const_iterator end = mac_special_menu_.end();
+ for (size_t i = 0 ; cit != end ; ++cit, ++i) {
+ Action * action = new Action(view, QIcon(), cit->label(),
+ cit->func(), QString(), qMenu);
+ action->setMenuRole(entries[i].role);
+ qMenu->addAction(action);
+ LYXERR(Debug::GUI, "Add special menu item " << cit->label());
}
}
diff --git a/status.20x b/status.20x
index 39e8dcc..61f29f6 100644
--- a/status.20x
+++ b/status.20x
@@ -64,6 +64,8 @@ What's new
- Handle undo in `branch-add' function.
+- Fix the missing dynamic menus in general and restore correctly from
fullscreen.
+
* DOCUMENTATION AND LOCALIZATION