diff --git a/src/plugins/coreplugin/mainwindow.cpp b/src/plugins/coreplugin/mainwindow.cpp
index a00d29ac0a6a55eb1c6c211b265f575bd637dd28..6943d7a6cf00e07469f6fdca9588360d3f954e02 100644
--- a/src/plugins/coreplugin/mainwindow.cpp
+++ b/src/plugins/coreplugin/mainwindow.cpp
@@ -716,6 +716,7 @@ void MainWindow::registerDefaultActions()
                                         tr("Show Sidebar"), this);
     m_toggleSideBarAction->setCheckable(true);
     cmd = am->registerAction(m_toggleSideBarAction, Constants::TOGGLE_SIDEBAR, m_globalContext);
+    cmd->setAttribute(Command::CA_UpdateText);
 #ifdef Q_WS_MAC
     cmd->setDefaultKeySequence(QKeySequence("Ctrl+0"));
 #else
diff --git a/src/plugins/coreplugin/navigationwidget.cpp b/src/plugins/coreplugin/navigationwidget.cpp
index ffa006542146b2650e9d3f90825d6626cd24cc32..9c43df4eb8d3da59c4d79883e2188308b07a44a0 100644
--- a/src/plugins/coreplugin/navigationwidget.cpp
+++ b/src/plugins/coreplugin/navigationwidget.cpp
@@ -163,10 +163,19 @@ int NavigationWidget::storedWidth()
     return m_width;
 }
 
+void NavigationWidget::updateToggleText()
+{
+    if (isShown())
+        m_toggleSideBarAction->setText(tr("Hide Sidebar"));
+    else
+        m_toggleSideBarAction->setText(tr("Show Sidebar"));
+}
+
 void NavigationWidget::placeHolderChanged(NavigationWidgetPlaceHolder *holder)
 {
     m_toggleSideBarAction->setEnabled(holder);
     m_toggleSideBarAction->setChecked(holder && isShown());
+    updateToggleText();
 }
 
 void NavigationWidget::resizeEvent(QResizeEvent *re)
@@ -307,6 +316,7 @@ void NavigationWidget::setShown(bool b)
     } else {
         m_toggleSideBarAction->setChecked(false);
     }
+    updateToggleText();
 }
 
 bool NavigationWidget::isShown() const
diff --git a/src/plugins/coreplugin/navigationwidget.h b/src/plugins/coreplugin/navigationwidget.h
index 61dbc3dacbe486760b7e87bfcca790768e99e4b2..7620c5445545ffe77913d9fdc5f850386ffff220 100644
--- a/src/plugins/coreplugin/navigationwidget.h
+++ b/src/plugins/coreplugin/navigationwidget.h
@@ -107,6 +107,7 @@ private slots:
     void closeSubWidget();
 
 private:
+    void updateToggleText();
     NavigationSubWidget *insertSubItem(int position);
     QList<NavigationSubWidget *> m_subWidgets;
     QHash<QShortcut *, QString> m_shortcutMap;