diff --git a/src/plugins/coreplugin/mainwindow.cpp b/src/plugins/coreplugin/mainwindow.cpp index 2a9fff0f4e38a8ef15e65314802fbaf21f5dcfc1..f68c5da7d06772f8684ddcb53f8244774e098153 100644 --- a/src/plugins/coreplugin/mainwindow.cpp +++ b/src/plugins/coreplugin/mainwindow.cpp @@ -625,6 +625,7 @@ void MainWindow::registerDefaultActions() // Toggle Sidebar Action m_toggleSideBarAction = new QAction(QIcon(Constants::ICON_TOGGLE_SIDEBAR), tr("Toggle Sidebar"), this); + m_toggleSideBarAction->setCheckable(true); cmd = am->registerAction(m_toggleSideBarAction, Constants::TOGGLE_SIDEBAR, m_globalContext); #ifdef Q_OS_MAC cmd->setDefaultKeySequence(QKeySequence("Ctrl+0")); diff --git a/src/plugins/coreplugin/navigationwidget.cpp b/src/plugins/coreplugin/navigationwidget.cpp index 9bbb4323d21bbb12e18a50f013a474fa2e4bc648..412559a9b0aecd1c2c22d19554776d8de37fe439 100644 --- a/src/plugins/coreplugin/navigationwidget.cpp +++ b/src/plugins/coreplugin/navigationwidget.cpp @@ -166,6 +166,7 @@ int NavigationWidget::storedWidth() void NavigationWidget::placeHolderChanged(NavigationWidgetPlaceHolder *holder) { m_toggleSideBarAction->setEnabled(holder); + m_toggleSideBarAction->setChecked(holder && isShown()); } void NavigationWidget::resizeEvent(QResizeEvent *re) @@ -281,8 +282,12 @@ void NavigationWidget::setShown(bool b) if (m_shown == b) return; m_shown = b; - if (NavigationWidgetPlaceHolder::m_current) + if (NavigationWidgetPlaceHolder::m_current) { NavigationWidgetPlaceHolder::m_current->setVisible(m_shown && !m_suppressed); + m_toggleSideBarAction->setChecked(m_shown); + } else { + m_toggleSideBarAction->setChecked(false); + } } bool NavigationWidget::isShown() const