diff --git a/src/libs/utils/fancymainwindow.cpp b/src/libs/utils/fancymainwindow.cpp
index dd17ae5f798a0c58b74d6ae057d3fdd1dc47b66a..5c1cdeb679328a62ea56d473990325f0b74df044 100644
--- a/src/libs/utils/fancymainwindow.cpp
+++ b/src/libs/utils/fancymainwindow.cpp
@@ -119,14 +119,16 @@ void FancyMainWindow::updateDockWidget(QDockWidget *dockWidget)
     const QDockWidget::DockWidgetFeatures features =
             (d->m_locked) ? QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetFloatable
                        : QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetFloatable;
-    QWidget *titleBarWidget = dockWidget->titleBarWidget();
-    if (d->m_locked && !titleBarWidget && !dockWidget->isFloating())
-        titleBarWidget = new QWidget(dockWidget);
-    else if ((!d->m_locked || dockWidget->isFloating()) && titleBarWidget) {
-        delete titleBarWidget;
-        titleBarWidget = 0;
+    if (dockWidget->property("managed_dockwidget").isNull()) { // for the debugger tool bar
+        QWidget *titleBarWidget = dockWidget->titleBarWidget();
+        if (d->m_locked && !titleBarWidget && !dockWidget->isFloating())
+            titleBarWidget = new QWidget(dockWidget);
+        else if ((!d->m_locked || dockWidget->isFloating()) && titleBarWidget) {
+            delete titleBarWidget;
+            titleBarWidget = 0;
+        }
+        dockWidget->setTitleBarWidget(titleBarWidget);
     }
-    dockWidget->setTitleBarWidget(titleBarWidget);
     dockWidget->setFeatures(features);
 }
 
@@ -257,7 +259,15 @@ bool FancyMainWindow::isLocked() const
 
 QMenu *FancyMainWindow::createPopupMenu()
 {
-    QMenu *menu = QMainWindow::createPopupMenu();
+    QMenu *menu = new QMenu(this);;
+    QList<QDockWidget *> dockwidgets = qFindChildren<QDockWidget *>(this);
+    for (int i = 0; i < dockwidgets.size(); ++i) {
+        QDockWidget *dockWidget = dockwidgets.at(i);
+        if (dockWidget->property("managed_dockwidget").isNull()
+                && dockWidget->parentWidget() == this) {
+            menu->addAction(dockwidgets.at(i)->toggleViewAction());
+        }
+    }
     menu->addAction(&d->m_menuSeparator1);
     menu->addAction(&d->m_toggleLockedAction);
     menu->addAction(&d->m_menuSeparator2);
diff --git a/src/plugins/debugger/debuggermainwindow.cpp b/src/plugins/debugger/debuggermainwindow.cpp
index 4749d08d6e0dba2d02896eae11f31ad59a7a30bf..c37a756c9914f8de96a22572a8c7a80df67f4162 100644
--- a/src/plugins/debugger/debuggermainwindow.cpp
+++ b/src/plugins/debugger/debuggermainwindow.cpp
@@ -476,6 +476,7 @@ QWidget *DebuggerMainWindow::createContents(IMode *mode)
     dock->setFeatures(QDockWidget::NoDockWidgetFeatures);
     dock->setAllowedAreas(Qt::BottomDockWidgetArea);
     dock->setTitleBarWidget(new QWidget(dock));
+    dock->setProperty("managed_dockwidget", QLatin1String("true"));
     addDockWidget(Qt::BottomDockWidgetArea, dock);
     setToolBarDockWidget(dock);