forked from qt-creator/qt-creator
QML Debugger: Don't pretend the engine is interrupted when it isn't
After sending the interrupt request the application will continue to the next line of JavaScript and only interrupt then. There is no way to interrupt the application via the JS debugger as long as no JS engine is active. The downside of this is that the pause/continue/stop icons are disabled until the application actually interrupts. The user might not understand this. Change-Id: I355de52f65898d6bdcd437675adba368662f3c13 Task-number: QTCREATORBUG-16646 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -661,7 +661,7 @@ void QmlEngine::interruptInferior()
|
||||
{
|
||||
showMessage(INTERRUPT, LogInput);
|
||||
d->runDirectCommand(INTERRUPT);
|
||||
notifyInferiorStopOk();
|
||||
showStatusMessage(tr("Waiting for JavaScript engine to interrupt on next statement."));
|
||||
}
|
||||
|
||||
void QmlEngine::executeStep()
|
||||
@@ -1966,7 +1966,8 @@ void QmlEnginePrivate::messageReceived(const QByteArray &data)
|
||||
}
|
||||
engine->notifyInferiorSpontaneousStop();
|
||||
backtrace();
|
||||
} else if (engine->state() == InferiorStopOk) {
|
||||
} else if (engine->state() == InferiorStopRequested) {
|
||||
engine->notifyInferiorStopOk();
|
||||
backtrace();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user