diff --git a/src/plugins/help/helpplugin.cpp b/src/plugins/help/helpplugin.cpp
index 992a801d1c494b97fa94cf577c3eed331577a0a4..45e8256b6e817887a9fb969e9e0d785556ae7a40 100644
--- a/src/plugins/help/helpplugin.cpp
+++ b/src/plugins/help/helpplugin.cpp
@@ -485,7 +485,7 @@ bool HelpPlugin::unregisterDocumentation(const QStringList &nameSpaces)
     return needsSetup;
 }
 
-void HelpPlugin::createRightPaneSideBar()
+void HelpPlugin::createRightPaneContextViewer()
 {
     if (m_helpViewerForSideBar)
         return;
@@ -855,10 +855,12 @@ HelpViewer* HelpPlugin::viewerForContextMode()
     HelpViewer *viewer = m_centralWidget->currentHelpViewer();
     if (placeHolder && showSideBySide) {
         RightPaneWidget::instance()->setShown(true);
+
+        createRightPaneContextViewer();
         viewer = m_helpViewerForSideBar;
     } else {
         activateHelpMode();
-        if (!viewer && m_centralWidget)
+        if (!viewer)
             viewer = m_centralWidget->newEmptyTab();
     }
     return viewer;
@@ -867,9 +869,7 @@ HelpViewer* HelpPlugin::viewerForContextMode()
 void HelpPlugin::activateContext()
 {
     using namespace Core;
-
-    if (!m_helpViewerForSideBar)
-        createRightPaneSideBar();
+    createRightPaneContextViewer();
 
     RightPanePlaceHolder* placeHolder = RightPanePlaceHolder::current();
     if (placeHolder && m_helpViewerForSideBar->hasFocus()) {
diff --git a/src/plugins/help/helpplugin.h b/src/plugins/help/helpplugin.h
index 0a6a6e32c82178eec4135184515dc02e23afa665..396b58e32505b64528b32343ba648d1865b10940 100644
--- a/src/plugins/help/helpplugin.h
+++ b/src/plugins/help/helpplugin.h
@@ -140,7 +140,7 @@ private:
 
 private:
     QToolBar *createToolBar();
-    void createRightPaneSideBar();
+    void createRightPaneContextViewer();
     void activateHelpMode();
     HelpViewer* viewerForContextMode();