From 378d0cd1199543e97218cd6edb37bcebcac4cdd2 Mon Sep 17 00:00:00 2001 From: Aurindam Jana Date: Tue, 16 Jul 2013 14:17:32 +0200 Subject: [PATCH] QmlDebugging: Reset exception code highlighting Clear code highlighting when debugging session ends. Change-Id: I32844444161bbb609864926e12220f9fb0f492e2 Reviewed-by: Eike Ziller --- src/plugins/debugger/qml/baseqmldebuggerclient.h | 1 + src/plugins/debugger/qml/qmlengine.cpp | 3 +++ src/plugins/debugger/qml/qmlv8debuggerclient.cpp | 5 +++++ src/plugins/debugger/qml/qmlv8debuggerclient.h | 1 + src/plugins/debugger/qml/qscriptdebuggerclient.cpp | 4 ++++ src/plugins/debugger/qml/qscriptdebuggerclient.h | 1 + 6 files changed, 15 insertions(+) diff --git a/src/plugins/debugger/qml/baseqmldebuggerclient.h b/src/plugins/debugger/qml/baseqmldebuggerclient.h index 191c0142b08..9aa85a57f8a 100644 --- a/src/plugins/debugger/qml/baseqmldebuggerclient.h +++ b/src/plugins/debugger/qml/baseqmldebuggerclient.h @@ -52,6 +52,7 @@ public: virtual void startSession() = 0; virtual void endSession() = 0; + virtual void resetSession() = 0; virtual void executeStep() = 0; virtual void executeStepOut() = 0; diff --git a/src/plugins/debugger/qml/qmlengine.cpp b/src/plugins/debugger/qml/qmlengine.cpp index 323f196ad99..d0390d61c5d 100644 --- a/src/plugins/debugger/qml/qmlengine.cpp +++ b/src/plugins/debugger/qml/qmlengine.cpp @@ -659,6 +659,9 @@ void QmlEngine::shutdownInferior() void QmlEngine::shutdownEngine() { + if (m_adapter.activeDebuggerClient()) + m_adapter.activeDebuggerClient()->resetSession(); + if (qmlConsoleManager()) qmlConsoleManager()->setScriptEvaluator(0); m_noDebugOutputTimer.stop(); diff --git a/src/plugins/debugger/qml/qmlv8debuggerclient.cpp b/src/plugins/debugger/qml/qmlv8debuggerclient.cpp index 83e5d9964c7..9a3677d61a8 100644 --- a/src/plugins/debugger/qml/qmlv8debuggerclient.cpp +++ b/src/plugins/debugger/qml/qmlv8debuggerclient.cpp @@ -949,6 +949,11 @@ void QmlV8DebuggerClient::endSession() d->disconnect(); } +void QmlV8DebuggerClient::resetSession() +{ + clearExceptionSelection(); +} + void QmlV8DebuggerClient::executeStep() { clearExceptionSelection(); diff --git a/src/plugins/debugger/qml/qmlv8debuggerclient.h b/src/plugins/debugger/qml/qmlv8debuggerclient.h index 1d68ae11865..1d2f90bde11 100644 --- a/src/plugins/debugger/qml/qmlv8debuggerclient.h +++ b/src/plugins/debugger/qml/qmlv8debuggerclient.h @@ -62,6 +62,7 @@ public: void startSession(); void endSession(); + void resetSession(); void executeStep(); void executeStepOut(); diff --git a/src/plugins/debugger/qml/qscriptdebuggerclient.cpp b/src/plugins/debugger/qml/qscriptdebuggerclient.cpp index 22bb857f510..2910f895f3a 100644 --- a/src/plugins/debugger/qml/qscriptdebuggerclient.cpp +++ b/src/plugins/debugger/qml/qscriptdebuggerclient.cpp @@ -223,6 +223,10 @@ void QScriptDebuggerClient::startSession() } void QScriptDebuggerClient::endSession() +{ +} + +void QScriptDebuggerClient::resetSession() { d->sessionStarted = false; } diff --git a/src/plugins/debugger/qml/qscriptdebuggerclient.h b/src/plugins/debugger/qml/qscriptdebuggerclient.h index 9f33f9301ca..d7b6b7963d3 100644 --- a/src/plugins/debugger/qml/qscriptdebuggerclient.h +++ b/src/plugins/debugger/qml/qscriptdebuggerclient.h @@ -47,6 +47,7 @@ public: void startSession(); void endSession(); + void resetSession(); void executeStep(); void executeStepOut();