summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/debugger/debuggercore.h1
-rw-r--r--src/plugins/debugger/debuggerplugin.cpp6
-rw-r--r--src/plugins/debugger/debuggerruncontrol.cpp1
3 files changed, 7 insertions, 1 deletions
diff --git a/src/plugins/debugger/debuggercore.h b/src/plugins/debugger/debuggercore.h
index 6441c5df2c..80e1f9b88a 100644
--- a/src/plugins/debugger/debuggercore.h
+++ b/src/plugins/debugger/debuggercore.h
@@ -76,6 +76,7 @@ void runControlFinished(DebuggerEngine *engine);
void displayDebugger(DebuggerEngine *engine, bool updateEngine);
void synchronizeBreakpoints();
+void saveModeToRestore();
QWidget *mainWindow();
bool isRegistersWindowVisible();
bool isModulesWindowVisible();
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 7fc925e616..531b2c0991 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -2691,7 +2691,6 @@ void DebuggerPluginPrivate::activateDebugMode()
{
m_reverseDirectionAction->setChecked(false);
m_reverseDirectionAction->setEnabled(false);
- m_previousMode = ModeManager::currentMode()->id();
ModeManager::activateMode(MODE_DEBUG);
}
@@ -3315,6 +3314,11 @@ void DebuggerPluginPrivate::onModeChanged(IMode *mode)
}
}
+void saveModeToRestore()
+{
+ dd->m_previousMode = ModeManager::currentMode()->id();
+}
+
} // namespace Internal
bool ActionDescription::isRunnable(QString *reason) const
diff --git a/src/plugins/debugger/debuggerruncontrol.cpp b/src/plugins/debugger/debuggerruncontrol.cpp
index f676fbfe9b..defcaa1c7f 100644
--- a/src/plugins/debugger/debuggerruncontrol.cpp
+++ b/src/plugins/debugger/debuggerruncontrol.cpp
@@ -141,6 +141,7 @@ QString DebuggerRunControl::displayName() const
void DebuggerRunControl::start()
{
+ Debugger::Internal::saveModeToRestore();
Debugger::selectPerspective(Debugger::Constants::CppPerspectiveId);
TaskHub::clearTasks(Debugger::Constants::TASK_CATEGORY_DEBUGGER_DEBUGINFO);
TaskHub::clearTasks(Debugger::Constants::TASK_CATEGORY_DEBUGGER_RUNTIME);