SVN commit 1133041 by hindenburg: Fix issue where the menu status for View menubar is not correct. BUG: 181345 M +12 -1 MainWindow.cpp M +3 -0 MainWindow.h --- trunk/KDE/kdebase/apps/konsole/src/MainWindow.cpp #1133040:1133041 @@ -267,7 +267,6 @@ // View Menu _toggleMenuBarAction = KStandardAction::showMenubar(menuBar(), SLOT(setVisible(bool)), collection); _toggleMenuBarAction->setShortcut( QKeySequence(Qt::CTRL + Qt::SHIFT + Qt::Key_M) ); - _toggleMenuBarAction->setChecked( !menuBar()->isHidden() ); // Hide the Show/Hide menubar item if the menu bar is a MacOS-style menu bar if ( menuBar()->isTopLevelMenu() ) @@ -504,5 +503,17 @@ KNotifyConfigWidget::configure( this ); } +void MainWindow::showEvent(QShowEvent *event) +{ + // This code from Konqueror. + // We need to check if our toolbars are shown/hidden here, and set + // our menu items accordingly. We can't do it in the constructor because + // view profiles store toolbar info, and that info is read after + // construct time. + _toggleMenuBarAction->setChecked( !menuBar()->isHidden() ); + // Call parent method + KXmlGuiWindow::showEvent(event); +} + #include "MainWindow.moc" --- trunk/KDE/kdebase/apps/konsole/src/MainWindow.h #1133040:1133041 @@ -143,6 +143,9 @@ void closeActiveSessionRequest(); protected: + // Reimplemented for internal reasons. + virtual void showEvent(QShowEvent *event); + // reimplemented from KMainWindow virtual bool queryClose(); virtual void saveProperties(KConfigGroup& group);