diff --git a/src/plugins/bookmarks/bookmarkmanager.cpp b/src/plugins/bookmarks/bookmarkmanager.cpp
index 71507d4d6d6556bd50cd89ca9d88b8602f2a1e7f..0d2ea2f45edfb9653d738a2e9136df19daa9f162 100644
--- a/src/plugins/bookmarks/bookmarkmanager.cpp
+++ b/src/plugins/bookmarks/bookmarkmanager.cpp
@@ -774,12 +774,17 @@ BookmarkViewFactory::BookmarkViewFactory(BookmarkManager *bm)
 
 }
 
-QString BookmarkViewFactory::displayName()
+QString BookmarkViewFactory::displayName() const
 {
     return BookmarkView::tr("Bookmarks");
 }
 
-QKeySequence BookmarkViewFactory::activationSequence()
+QString BookmarkViewFactory::id() const
+{
+    return QLatin1String("Bookmarks");
+}
+
+QKeySequence BookmarkViewFactory::activationSequence() const
 {
     return QKeySequence(Qt::ALT + Qt::Key_M);
 }
diff --git a/src/plugins/bookmarks/bookmarkmanager.h b/src/plugins/bookmarks/bookmarkmanager.h
index 02c303683340a4515aafc2d6762e8a8a91b77a81..843bfe00335e853d23ae9e1aa38a6dba766d817c 100644
--- a/src/plugins/bookmarks/bookmarkmanager.h
+++ b/src/plugins/bookmarks/bookmarkmanager.h
@@ -169,9 +169,10 @@ class BookmarkViewFactory : public Core::INavigationWidgetFactory
 {
 public:
     BookmarkViewFactory(BookmarkManager *bm);
-    virtual QString displayName();
-    virtual QKeySequence activationSequence();
-    virtual Core::NavigationView createWidget();
+    QString displayName() const;
+    QString id() const;
+    QKeySequence activationSequence() const;
+    Core::NavigationView createWidget();
 private:
     BookmarkManager *m_manager;
 };
diff --git a/src/plugins/coreplugin/editormanager/openeditorsview.cpp b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
index d0d6d7262c2c25083244eaad47ba16faa18c3b1b..3c9939de0b24f282980bebc484400c716a9b7b50 100644
--- a/src/plugins/coreplugin/editormanager/openeditorsview.cpp
+++ b/src/plugins/coreplugin/editormanager/openeditorsview.cpp
@@ -242,12 +242,17 @@ NavigationView OpenEditorsViewFactory::createWidget()
     return n;
 }
 
-QString OpenEditorsViewFactory::displayName()
+QString OpenEditorsViewFactory::displayName() const
 {
     return OpenEditorsWidget::tr("Open Documents");
 }
 
-QKeySequence OpenEditorsViewFactory::activationSequence()
+QString OpenEditorsViewFactory::id() const
+{
+    return QLatin1String("Open Documents");
+}
+
+QKeySequence OpenEditorsViewFactory::activationSequence() const
 {
     return QKeySequence(Qt::ALT + Qt::Key_O);
 }
diff --git a/src/plugins/coreplugin/editormanager/openeditorsview.h b/src/plugins/coreplugin/editormanager/openeditorsview.h
index 706b3d3637c8cfa99035483b67604206321df399..42a3a7459b66e8278f8e835d6ae77230d61ed002 100644
--- a/src/plugins/coreplugin/editormanager/openeditorsview.h
+++ b/src/plugins/coreplugin/editormanager/openeditorsview.h
@@ -88,9 +88,10 @@ class OpenEditorsViewFactory : public Core::INavigationWidgetFactory
 {
 public:
     OpenEditorsViewFactory();
-    virtual ~OpenEditorsViewFactory();
-    QString displayName();
-    virtual QKeySequence activationSequence();
+    ~OpenEditorsViewFactory();
+    QString displayName() const;
+    QString id() const;
+    QKeySequence activationSequence() const;
     Core::NavigationView createWidget();
 };
 
diff --git a/src/plugins/coreplugin/inavigationwidgetfactory.cpp b/src/plugins/coreplugin/inavigationwidgetfactory.cpp
index 74cd93cde483cff32926628c085c4b78287bc8d1..399107c5ea83fff8b98991f7bfdb67bdbf935bc8 100644
--- a/src/plugins/coreplugin/inavigationwidgetfactory.cpp
+++ b/src/plugins/coreplugin/inavigationwidgetfactory.cpp
@@ -41,7 +41,7 @@ INavigationWidgetFactory::~INavigationWidgetFactory()
 {
 }
 
-QKeySequence INavigationWidgetFactory::activationSequence()
+QKeySequence INavigationWidgetFactory::activationSequence() const
 {
     return QKeySequence();
 }
diff --git a/src/plugins/coreplugin/inavigationwidgetfactory.h b/src/plugins/coreplugin/inavigationwidgetfactory.h
index 25d2b71cafdb66577437b9393143102f8548c6a4..d148caafcf6721486a78426bb729214ed7f55942 100644
--- a/src/plugins/coreplugin/inavigationwidgetfactory.h
+++ b/src/plugins/coreplugin/inavigationwidgetfactory.h
@@ -55,8 +55,9 @@ public:
     INavigationWidgetFactory();
     virtual ~INavigationWidgetFactory();
 
-    virtual QString displayName() = 0;
-    virtual QKeySequence activationSequence();
+    virtual QString displayName() const = 0;
+    virtual QString id() const = 0;
+    virtual QKeySequence activationSequence() const;
     // This design is not optimal, think about it again once we need to extend it
     // It could be implemented as returning an object which has both the widget 
     // and the docktoolbar widgets
diff --git a/src/plugins/coreplugin/navigationwidget.cpp b/src/plugins/coreplugin/navigationwidget.cpp
index 9c43df4eb8d3da59c4d79883e2188308b07a44a0..8ba5e69fde51d6be68d5a02bfee27d543b58e3c1 100644
--- a/src/plugins/coreplugin/navigationwidget.cpp
+++ b/src/plugins/coreplugin/navigationwidget.cpp
@@ -199,15 +199,15 @@ void NavigationWidget::activateSubWidget()
 {
     setShown(true);
     QShortcut *original = qobject_cast<QShortcut *>(sender());
-    QString title = m_shortcutMap[original];
+    QString id = m_shortcutMap[original];
 
     foreach (NavigationSubWidget *subWidget, m_subWidgets)
-        if (subWidget->factory()->displayName() == title) {
+        if (subWidget->factory()->id() == id) {
             subWidget->setFocusWidget();
             return;
         }
 
-    m_subWidgets.first()->setFactory(title);
+    m_subWidgets.first()->setFactory(id);
     m_subWidgets.first()->setFocusWidget();
 }
 
@@ -237,7 +237,7 @@ void NavigationWidget::saveSettings(QSettings *settings)
 {
     QStringList views;
     for (int i=0; i<m_subWidgets.count(); ++i) {
-        views.append(m_subWidgets.at(i)->factory()->displayName());
+        views.append(m_subWidgets.at(i)->factory()->id());
     }
     settings->setValue("Navigation/Views", views);
     settings->setValue("Navigation/Visible", isShown());
@@ -349,16 +349,16 @@ void NavigationWidget::objectAdded(QObject * obj)
     QList<int> navicontext = QList<int>() << core->uniqueIDManager()->
         uniqueIdentifier(Core::Constants::C_NAVIGATION_PANE);
 
-    QString displayName = factory->displayName();
+    QString id = factory->id();
     QShortcut *shortcut = new QShortcut(this);
-    shortcut->setWhatsThis(tr("Activate %1 Pane").arg(displayName));
+    shortcut->setWhatsThis(tr("Activate %1 Pane").arg(factory->displayName()));
     Core::Command *cmd = am->registerShortcut(shortcut,
-        QLatin1String("QtCreator.Sidebar.") + displayName, navicontext);
+        QLatin1String("QtCreator.Sidebar.") + id, navicontext);
     cmd->setDefaultKeySequence(factory->activationSequence());
     connect(shortcut, SIGNAL(activated()), this, SLOT(activateSubWidget()));
 
-    m_shortcutMap.insert(shortcut, displayName);
-    m_commandMap.insert(displayName, cmd);
+    m_shortcutMap.insert(shortcut, id);
+    m_commandMap.insert(id, cmd);
 }
 
 ////
@@ -486,12 +486,12 @@ void NavigationSubWidget::setFactory(INavigationWidgetFactory *factory)
     m_navigationComboBox->setCurrentIndex(index);
 }
 
-void NavigationSubWidget::setFactory(const QString &name)
+void NavigationSubWidget::setFactory(const QString &id)
 {
     for (int i = 0; i < m_navigationComboBox->count(); ++i) {
         INavigationWidgetFactory *factory =
                 m_navigationComboBox->itemData(i).value<INavigationWidgetFactory *>();
-        if (factory->displayName() == name)
+        if (factory->id() == id)
             m_navigationComboBox->setCurrentIndex(i);
     }
 }
diff --git a/src/plugins/coreplugin/navigationwidget.h b/src/plugins/coreplugin/navigationwidget.h
index 7620c5445545ffe77913d9fdc5f850386ffff220..f63e42649228d008285d9a8e1b6fe3dc2006b7e5 100644
--- a/src/plugins/coreplugin/navigationwidget.h
+++ b/src/plugins/coreplugin/navigationwidget.h
@@ -128,7 +128,7 @@ public:
 
     INavigationWidgetFactory *factory();
     void setFactory(INavigationWidgetFactory *factory);
-    void setFactory(const QString &name);
+    void setFactory(const QString &id);
     void setFocusWidget();
 
     void saveSettings(int position);
diff --git a/src/plugins/coreplugin/outputpane.cpp b/src/plugins/coreplugin/outputpane.cpp
index 10f642e2d9a4d9e19f6db1919fc95f417564198f..49e8501528f1aff324e5ef7807d64d3561b19204 100644
--- a/src/plugins/coreplugin/outputpane.cpp
+++ b/src/plugins/coreplugin/outputpane.cpp
@@ -309,6 +309,7 @@ void OutputPaneManager::init()
 #else
     cmd->setDefaultKeySequence(QKeySequence("Alt+9"));
 #endif
+    cmd->setAttribute(Command::CA_UpdateText);
     mpanes->addAction(cmd, "Coreplugin.OutputPane.ActionsGroup");
     m_minMaxButton->setDefaultAction(cmd->action());
     connect(m_minMaxAction, SIGNAL(triggered()), this, SLOT(slotMinMax()));
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.cpp b/src/plugins/projectexplorer/foldernavigationwidget.cpp
index 37b7563516727f95f4e3f9464a82b6bacea25f0f..eb30b850bbaf1d35073ec4fb655bd17154340ee5 100644
--- a/src/plugins/projectexplorer/foldernavigationwidget.cpp
+++ b/src/plugins/projectexplorer/foldernavigationwidget.cpp
@@ -413,12 +413,17 @@ FolderNavigationWidgetFactory::~FolderNavigationWidgetFactory()
 {
 }
 
-QString FolderNavigationWidgetFactory::displayName()
+QString FolderNavigationWidgetFactory::displayName() const
 {
     return tr("File System");
 }
 
-QKeySequence FolderNavigationWidgetFactory::activationSequence()
+QString FolderNavigationWidgetFactory::id() const
+{
+    return QLatin1String("File System");
+}
+
+QKeySequence FolderNavigationWidgetFactory::activationSequence() const
 {
     return QKeySequence(Qt::ALT + Qt::Key_Y);
 }
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.h b/src/plugins/projectexplorer/foldernavigationwidget.h
index 79f099d7cf82394f533cd9f284d6c53e46ba3f2e..cfb4f8870f26ea1ece80f3329331b6deb2e27039 100644
--- a/src/plugins/projectexplorer/foldernavigationwidget.h
+++ b/src/plugins/projectexplorer/foldernavigationwidget.h
@@ -97,11 +97,12 @@ class FolderNavigationWidgetFactory : public Core::INavigationWidgetFactory
     Q_OBJECT
 public:
     FolderNavigationWidgetFactory();
-    virtual ~FolderNavigationWidgetFactory();
+    ~FolderNavigationWidgetFactory();
 
-    virtual QString displayName();
-    virtual QKeySequence activationSequence();
-    virtual Core::NavigationView createWidget();
+    QString displayName() const;
+    QString id() const;
+    QKeySequence activationSequence() const;
+    Core::NavigationView createWidget();
 };
 
 } // namespace Internal
diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp
index bd9e0b658f8f878b19a39d747c1acfd8ac0d9533..b89aba251322a11b0039de2353296e7f4a4468a1 100644
--- a/src/plugins/projectexplorer/projecttreewidget.cpp
+++ b/src/plugins/projectexplorer/projecttreewidget.cpp
@@ -365,12 +365,17 @@ ProjectTreeWidgetFactory::~ProjectTreeWidgetFactory()
 {
 }
 
-QString ProjectTreeWidgetFactory::displayName()
+QString ProjectTreeWidgetFactory::displayName() const
 {
     return tr("Projects");
 }
 
-QKeySequence ProjectTreeWidgetFactory::activationSequence()
+QString ProjectTreeWidgetFactory::id() const
+{
+    return QLatin1String("Projects");
+}
+
+QKeySequence ProjectTreeWidgetFactory::activationSequence() const
 {
     return QKeySequence(Qt::ALT + Qt::Key_X);
 }
diff --git a/src/plugins/projectexplorer/projecttreewidget.h b/src/plugins/projectexplorer/projecttreewidget.h
index 2413bd95497ffd8e5879a26fc4a37b7d127b3758..564a85de63d397d1672c8876e68a2c36bf1f85b5 100644
--- a/src/plugins/projectexplorer/projecttreewidget.h
+++ b/src/plugins/projectexplorer/projecttreewidget.h
@@ -98,10 +98,11 @@ class ProjectTreeWidgetFactory : public Core::INavigationWidgetFactory
     Q_OBJECT
 public:
     ProjectTreeWidgetFactory();
-    virtual ~ProjectTreeWidgetFactory();
-    virtual QString displayName();
-    virtual QKeySequence activationSequence();
-    virtual Core::NavigationView createWidget();
+    ~ProjectTreeWidgetFactory();
+    QString displayName() const;
+    QString id() const;
+    QKeySequence activationSequence() const;
+    Core::NavigationView createWidget();
     void restoreSettings(int position, QWidget *widget);
     void saveSettings(int position, QWidget *widget);
 };