Git commit 41c3d76326090fe27ab1111481504bd63527837f by Jan Kundrát. Committed on 03/03/2015 at 18:19. Pushed by gerrit into branch 'master'.
GUI: Only add button for showing main menu when toolbar is hidden, too If the toolbar is visible, showing an explicit button for this feels a bit redundant. Change-Id: I33cc57709140cf35fe273c67eaf938402f822b49 M +8 -2 src/Gui/Window.cpp M +1 -0 src/Gui/Window.h http://commits.kde.org/trojita/41c3d76326090fe27ab1111481504bd63527837f diff --git a/src/Gui/Window.cpp b/src/Gui/Window.cpp index 18763a0..729b144 100644 --- a/src/Gui/Window.cpp +++ b/src/Gui/Window.cpp @@ -289,7 +289,7 @@ void MainWindow::createActions() showMenuBar->setCheckable(true); showMenuBar->setChecked(true); connect(showMenuBar, SIGNAL(triggered(bool)), menuBar(), SLOT(setVisible(bool))); - connect(showMenuBar, SIGNAL(triggered(bool)), menuShow, SLOT(setHidden(bool))); + connect(showMenuBar, SIGNAL(triggered(bool)), this, SLOT(updateMenuHidingButton())); connect(showMenuBar, SIGNAL(triggered(bool)), m_delayedStateSaving, SLOT(start())); connect(menuShow, SIGNAL(clicked()), showMenuBar , SLOT(trigger())); @@ -299,6 +299,7 @@ void MainWindow::createActions() connect(showToolBar, SIGNAL(triggered(bool)), m_mainToolbar, SLOT(setVisible(bool))); connect(m_mainToolbar, SIGNAL(visibilityChanged(bool)), showToolBar, SLOT(setChecked(bool))); connect(m_mainToolbar, SIGNAL(visibilityChanged(bool)), m_delayedStateSaving, SLOT(start())); + connect(m_mainToolbar, SIGNAL(visibilityChanged(bool)), this, SLOT(updateMenuHidingButton())); configSettings = new QAction(loadIcon(QLatin1String("configure")), tr("&Settings..."), this); connect(configSettings, SIGNAL(triggered()), this, SLOT(slotShowSettings())); @@ -2402,7 +2403,7 @@ void MainWindow::applySizesAndState() if (ok) { menuBar()->setVisible(visibility); showMenuBar->setChecked(visibility); - menuShow->setVisible(!visibility); + updateMenuHidingButton(); } } @@ -2438,4 +2439,9 @@ void MainWindow::enableLoggingToDisk() imapLogger->slotSetPersistentLogging(true); } +void MainWindow::updateMenuHidingButton() +{ + menuShow->setVisible(!menuBar()->isVisibleTo(this) && !m_mainToolbar->isVisibleTo(this)); +} + } diff --git a/src/Gui/Window.h b/src/Gui/Window.h index 445b4c3..91062a8 100644 --- a/src/Gui/Window.h +++ b/src/Gui/Window.h @@ -204,6 +204,7 @@ private slots: void saveSizesAndState(); void saveRawStateSetting(bool enabled); void possiblyLoadMessageOnSplittersChanged(); + void updateMenuHidingButton(); void desktopGeometryChanged();
