diff --git a/src/plugins/coreplugin/sidebar.cpp b/src/plugins/coreplugin/sidebar.cpp
index 86ffd9fe9197f855e33e9715af31bf0dc16b0286..d595928ab3f346b00cf525f2488d770899ff08b4 100644
--- a/src/plugins/coreplugin/sidebar.cpp
+++ b/src/plugins/coreplugin/sidebar.cpp
@@ -143,24 +143,28 @@ void SideBar::updateWidgets()
         i->updateAvailableItems();
 }
 
-void SideBar::saveSettings(QSettings *settings)
+void SideBar::saveSettings(QSettings *settings, const QString &name)
 {
+    const QString prefix = name.isEmpty() ? name : (name + QLatin1Char('/'));
+
     QStringList views;
     for (int i = 0; i < m_widgets.count(); ++i)
         views.append(m_widgets.at(i)->currentItemTitle());
-    settings->setValue("HelpSideBar/Views", views);
-    settings->setValue("HelpSideBar/Visible", true);//isVisible());
-    settings->setValue("HelpSideBar/VerticalPosition", saveState());
-    settings->setValue("HelpSideBar/Width", width());
+    settings->setValue(prefix + "Views", views);
+    settings->setValue(prefix + "Visible", true);//isVisible());
+    settings->setValue(prefix + "VerticalPosition", saveState());
+    settings->setValue(prefix + "Width", width());
 }
 
-void SideBar::readSettings(QSettings *settings)
+void SideBar::readSettings(QSettings *settings, const QString &name)
 {
+    const QString prefix = name.isEmpty() ? name : (name + QLatin1Char('/'));
+
     foreach (SideBarWidget *widget, m_widgets)
         removeSideBarWidget(widget);
 
-    if (settings->contains("HelpSideBar/Views")) {
-        QStringList views = settings->value("HelpSideBar/Views").toStringList();
+    if (settings->contains(prefix + "Views")) {
+        QStringList views = settings->value(prefix + "Views").toStringList();
         if (views.count()) {
             foreach (const QString &title, views)
                 insertSideBarWidget(m_widgets.count(), title);
@@ -172,15 +176,15 @@ void SideBar::readSettings(QSettings *settings)
             insertSideBarWidget(m_widgets.count(), title);
     }
 
-    if (settings->contains("HelpSideBar/Visible"))
-        setVisible(settings->value("HelpSideBar/Visible").toBool());
+    if (settings->contains(prefix + "Visible"))
+        setVisible(settings->value(prefix + "Visible").toBool());
 
-    if (settings->contains("HelpSideBar/VerticalPosition"))
-        restoreState(settings->value("HelpSideBar/VerticalPosition").toByteArray());
+    if (settings->contains(prefix + "VerticalPosition"))
+        restoreState(settings->value(prefix + "VerticalPosition").toByteArray());
 
-    if (settings->contains("HelpSideBar/Width")) {
+    if (settings->contains(prefix + "Width")) {
         QSize s = size();
-        s.setWidth(settings->value("HelpSideBar/Width").toInt());
+        s.setWidth(settings->value(prefix + "Width").toInt());
         resize(s);
     }
 }
diff --git a/src/plugins/coreplugin/sidebar.h b/src/plugins/coreplugin/sidebar.h
index c4276e3e6e20bd5361076d2e32f1902d96f4c04b..17d90a93b22ae24de6ed7cd8dad7795544d12c52 100644
--- a/src/plugins/coreplugin/sidebar.h
+++ b/src/plugins/coreplugin/sidebar.h
@@ -101,8 +101,8 @@ public:
     void makeItemAvailable(SideBarItem *item);
     SideBarItem *item(const QString &title);
 
-    void saveSettings(QSettings *settings);
-    void readSettings(QSettings *settings);
+    void saveSettings(QSettings *settings, const QString &name);
+    void readSettings(QSettings *settings, const QString &name);
 
     void activateItem(SideBarItem *item);
 
diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp
index d905a538fd9ec28ea61526d06333b3e01f124dc2..02bf176679c79c3635c045030480448b6939e61b 100644
--- a/src/plugins/help/helpplugin.cpp
+++ b/src/plugins/help/helpplugin.cpp
@@ -566,7 +566,7 @@ void HelpPlugin::slotHideRightPane()
 
 void HelpPlugin::extensionsInitialized()
 {
-    m_sideBar->readSettings(m_core->settings());
+    m_sideBar->readSettings(m_core->settings(), QLatin1String("HelpSideBar"));
     if (!m_helpEngine->setupData()) {
         qWarning() << "Could not initialize help engine: " << m_helpEngine->error();
         return;
@@ -683,7 +683,7 @@ void HelpPlugin::extensionsInitialized()
 
 void HelpPlugin::shutdown()
 {
-    m_sideBar->saveSettings(m_core->settings());
+    m_sideBar->saveSettings(m_core->settings(), QLatin1String("HelpSideBar"));
     m_bookmarkManager->saveBookmarks();
     delete m_bookmarkManager;
 }