diff --git a/src/plugins/debugger/debuggerrunner.cpp b/src/plugins/debugger/debuggerrunner.cpp
index fd649a3079c6e7a5de73ee17ff8b2f686d7eef14..282b531097e2cbb2e6f95bf927d9a2d1dd3e3c44 100644
--- a/src/plugins/debugger/debuggerrunner.cpp
+++ b/src/plugins/debugger/debuggerrunner.cpp
@@ -498,6 +498,7 @@ void DebuggerRunControl::start()
         return;
     }
 
+    plugin()->activateDebugMode();
     DebuggerUISwitcher::instance()->aboutToStartDebugger();
 
     const QString message = tr("Starting debugger '%1' for tool chain '%2'...").
@@ -506,8 +507,6 @@ void DebuggerRunControl::start()
     plugin()->showMessage(DebuggerSettings::instance()->dump(), LogDebug);
     plugin()->runControlStarted(this);
 
-    plugin()->activateDebugMode();
-
     engine()->startDebugger(this);
     m_running = true;
     emit addToOutputWindowInline(this, tr("Debugging starts"), false);
diff --git a/src/plugins/debugger/debuggeruiswitcher.cpp b/src/plugins/debugger/debuggeruiswitcher.cpp
index 4c3f51aa74125302d02c2026718c42273d327445..b10ece7bc744843d9c8676910c52a967ac5bba1c 100644
--- a/src/plugins/debugger/debuggeruiswitcher.cpp
+++ b/src/plugins/debugger/debuggeruiswitcher.cpp
@@ -319,18 +319,6 @@ void DebuggerUISwitcher::modeChanged(Core::IMode *mode)
         //|| DebuggerPlugin::instance()->hasSnapsnots())
        return;
 
-    DebuggerLanguages activeLangs;
-    if (isCurrentProjectCppBased())
-        activeLangs |= CppLanguage;
-
-    if (isCurrentProjectQmlCppBased())
-        activeLangs |= QmlLanguage;
-
-    if (d->m_activateCppAction)
-        d->m_activateCppAction->setChecked(activeLangs & CppLanguage);
-    if (d->m_activateQmlAction)
-        d->m_activateQmlAction->setChecked(activeLangs & QmlLanguage);
-
     updateActiveLanguages();
 }