diff --git a/src/plugins/debugger/qml/qmladapter.cpp b/src/plugins/debugger/qml/qmladapter.cpp index 4ec0e417a5ae2ee32278a9208187cb8c83f592ee..dbe23aab931b4a35a98969fa2f9ae80b6e7fb723 100644 --- a/src/plugins/debugger/qml/qmladapter.cpp +++ b/src/plugins/debugger/qml/qmladapter.cpp @@ -170,6 +170,7 @@ void QmlAdapter::clientStatusChanged(QDeclarativeDebugClient::Status status) if (status == QDeclarativeDebugClient::Enabled) { d->m_qmlClient = d->debugClients.value(serviceName); + d->m_qmlClient->connect(); d->m_qmlClient->flushSendBuffer(); } } diff --git a/src/plugins/debugger/qml/qmldebuggerclient.h b/src/plugins/debugger/qml/qmldebuggerclient.h index 93c05299e23b51f29770d99f902591239fe1f7c9..a7391f65b0e7db125ece1dfff6085c15e31f5f93 100644 --- a/src/plugins/debugger/qml/qmldebuggerclient.h +++ b/src/plugins/debugger/qml/qmldebuggerclient.h @@ -52,6 +52,9 @@ public: QmlDebuggerClient(QmlJsDebugClient::QDeclarativeDebugConnection* client, QLatin1String clientName); virtual ~QmlDebuggerClient(); + virtual void connect() = 0; + virtual void disconnect() = 0; + virtual void executeStep() = 0; virtual void executeStepOut() = 0; virtual void executeNext() = 0; @@ -59,7 +62,6 @@ public: virtual void continueInferior() = 0; virtual void interruptInferior() = 0; - virtual void shutdownInferior() = 0; virtual void activateFrame(int index) = 0; diff --git a/src/plugins/debugger/qml/qmlengine.cpp b/src/plugins/debugger/qml/qmlengine.cpp index 9ff95179ee480c6cd729b8b6c2f09108741398f1..0af34b1357503fdbe97df690ccd40eeefa50bce3 100644 --- a/src/plugins/debugger/qml/qmlengine.cpp +++ b/src/plugins/debugger/qml/qmlengine.cpp @@ -375,7 +375,7 @@ void QmlEngine::handleRemoteSetupFailed(const QString &message) void QmlEngine::shutdownInferior() { - d->m_adapter.activeDebuggerClient()->shutdownInferior(); + d->m_adapter.activeDebuggerClient()->disconnect(); if (isSlaveEngine()) { resetLocation(); diff --git a/src/plugins/debugger/qml/qmlv8debuggerclient.cpp b/src/plugins/debugger/qml/qmlv8debuggerclient.cpp index 9c99a4fef33a8657dbfaec2ba1b580fff15a0760..2a6c4f5f33ce190a88d329490af83ea0735957c3 100644 --- a/src/plugins/debugger/qml/qmlv8debuggerclient.cpp +++ b/src/plugins/debugger/qml/qmlv8debuggerclient.cpp @@ -192,7 +192,19 @@ void QmlV8DebuggerClient::interruptInferior() } -void QmlV8DebuggerClient::shutdownInferior() +void QmlV8DebuggerClient::connect() +{ + QByteArray request; + + JsonInputStream(request) << '{' << INITIALPARAMS ; + JsonInputStream(request) << ',' << "command" << ':' << "connect"; + + JsonInputStream(request) << '}'; + + sendMessage(packMessage(request)); +} + +void QmlV8DebuggerClient::disconnect() { QByteArray request; diff --git a/src/plugins/debugger/qml/qmlv8debuggerclient.h b/src/plugins/debugger/qml/qmlv8debuggerclient.h index decb635b5fdfc177a39d55fb87712ebc2898ed82..b3ff37bd4e87b77eae523325dda9b2f8695e3e49 100644 --- a/src/plugins/debugger/qml/qmlv8debuggerclient.h +++ b/src/plugins/debugger/qml/qmlv8debuggerclient.h @@ -52,6 +52,9 @@ public: explicit QmlV8DebuggerClient(QmlJsDebugClient::QDeclarativeDebugConnection *client); ~QmlV8DebuggerClient(); + void connect(); + void disconnect(); + void executeStep(); void executeStepOut(); void executeNext(); @@ -59,7 +62,6 @@ public: void continueInferior(); void interruptInferior(); - void shutdownInferior(); void activateFrame(int index); diff --git a/src/plugins/debugger/qml/qscriptdebuggerclient.cpp b/src/plugins/debugger/qml/qscriptdebuggerclient.cpp index 6246e2ce89114b999549de04c8df01486dda3f14..692fef36e76144da6da5694e49500d131e153f14 100644 --- a/src/plugins/debugger/qml/qscriptdebuggerclient.cpp +++ b/src/plugins/debugger/qml/qscriptdebuggerclient.cpp @@ -192,9 +192,12 @@ void QScriptDebuggerClient::interruptInferior() sendMessage(reply); } -void QScriptDebuggerClient::shutdownInferior() +void QScriptDebuggerClient::connect() { +} +void QScriptDebuggerClient::disconnect() +{ } void QScriptDebuggerClient::activateFrame(int index) diff --git a/src/plugins/debugger/qml/qscriptdebuggerclient.h b/src/plugins/debugger/qml/qscriptdebuggerclient.h index 9ebb93d4b7abf84a810e5260bd5a25e757094ed5..6723347f0165e9b8178dc6b3633e34b7269bc566 100644 --- a/src/plugins/debugger/qml/qscriptdebuggerclient.h +++ b/src/plugins/debugger/qml/qscriptdebuggerclient.h @@ -51,6 +51,9 @@ public: QScriptDebuggerClient(QmlJsDebugClient::QDeclarativeDebugConnection *client); ~QScriptDebuggerClient(); + void connect(); + void disconnect(); + void executeStep(); void executeStepOut(); void executeNext(); @@ -58,7 +61,6 @@ public: void continueInferior(); void interruptInferior(); - void shutdownInferior(); void activateFrame(int index);