In this case we don't get any application output / message
telling us that the server is waiting, so let's try to connect
directly.
This is a regression introduced in commit 742019e301
Change-Id: I85d9f846c72e8b227dae5d6e847ab9366a34e2cc
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Actually wait for the 'Waiting for debugger on port ' ... message
to appear in the application output before connecting, and also
use the port specified there.
Change-Id: Ib498e5306bc49f2f3d468353b1c5d1ea38a809e6
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
Show QML/Javascript objects as a tree when
evaluated in the console.
Change-Id: I42901bf9bda3f18fb9fb1ca309a8370ccbe37c0a
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Move QML/JS independent classes to common Debugger
code. A Debugger Engine needs to override
evaluateScriptExpression() to provide engine
specific script evaluation.
Change-Id: I02b23b380a3eb1b12003b30ded0b7d075e44dfed
Reviewed-by: hjk <qthjk@ovi.com>
Getting the #include directives ready for Qt5. This includes the
new-project wizards.
Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
Make the choice of language part of the DebuggerStartParameters,
instead of deriving it indirectly from the current project. This
prevents e.g. the QmlCppEngine to be used when loading core files.
Change-Id: I9d1c9ab318ba789abe3a6ea0478ebda71857e793
Reviewed-by: hjk <qthjk@ovi.com>
Just emit the requestRemoteSetup on your own in QmlCppEngine. Also
properly check the related state transitions in DebuggerEngine.
Change-Id: I15dc4236303911126de7eee63ed996bdd8e5c5a8
Reviewed-by: hjk <qthjk@ovi.com>
Fix regression introduced in 9e8f935a while at the same time decoupling
the 'useServerStartScript' setting from whether the engine uses
requestRemoteSetup, or not.
Task-number: QTCREATORBUG-6841
Change-Id: I0850ec60e0f45ac66ba6736bcb9f75fdf73c1d23
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
This is more in line with e.g. the gdb engine, which also emits
requestRemoteSetup in setupEngine().
Change-Id: I1c2a4c56d6f190a3043ea8a18d2bb28c9d340826
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Update open editors when internal sources are reloaded.
Change-Id: If0780ac5fbbcd2a19c95dd5647d47cb70a9135e0
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Check for open editors with same display name before creating
a new editor to show the internal sources.
Change-Id: I53b365fb6c29d33922936bb4eb4dfb9476d5978e
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Request the sources actually seen by v8, and show them in a separate file
(click on the leftmost column). Automatically populating 'Source Files'
and also making the functionality available for mixed debugging requires
some more thought ...
Change-Id: Id8f55eed9c842b545434a6c608fb34d370a8f8bb
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Sometimes multiple lines arrive at once through the debugger API. Handle
this gracefully for QML engine output tracking by buffering incomplete lines.
Change-Id: I295cf88d1aeb1737aa46e0a9e7ebedb7562e94e4
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Change List:
a) Refactored code: Shifted JSON message creation to
QmlV8DebuggerClientPrivate.
b) QScriptEngine is used for JSON instead of JsonValue and
JsonInputStream.
c) Locals Window displays all variables accessible in the current
context.
Change-Id: I82e73f6c57482408f5fc501c908aa96297d3d754
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Rectify wrong state transitions for "Attach to QML Port".
Change-Id: Ife55344fb5089513743ff14f6bb5f2cabeed0adb
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Selecting a row in stack window activates the frame only if the
state is InferiorStopOk or InferiorUnrunnable, as followed by
gdbengine.
Change-Id: Iad6a16816c0ffd634572f26e1dcf8c3c577502db
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
There's a race condition between the QML Engine trying to connect after the app printed
"Waiting on debugger port ...", and any possible Cpp breakpoints stopping the app.
Therefore, don't annoy the user with "Could not connec to QML Debugger" warnings
while the Cpp debugger is stepping.
Change-Id: I77f6f98e835e45363c5d47e10b39df249f65a1a3
Task-number: QTCREATORBUG-6249
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
resetLocation() called by DebuggerPlugin::handle* should automatically
reset the locations for stepping etc.
Change-Id: I3e20f93ade7f40e1e1f33b1b48b11522b59771f8
Task-number: QTCREATORBUG-6291
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
The ScriptConsole is renamed to QmlJSScriptConsole. The console can be used
to evaluate expressions during a QML application debug session.
Changes:
* Console can be used even when application is not on a debug break
* The object context is the currently selected object in Inspector
* ContextMenu has a Clear option
* Multiple line expressions are supported
* Traverse Command History using up and down arrow keys
Change-Id: I4e1cd8763d60be43dbba395ead2a9a086d6bab7d
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
The main engine now follows mostly the state of the gdb engine,
only if a breakpoint is hit/while stepping the state of the qml
engine is used. This allows us to hit C++ breakpoints at any time
(also when the qml engine hasn't been able to connect yet), and
also fixes the invalid transition warnings.
Change-Id: If67a56fd28b098952be2606d0a46e04c27835f66
Reviewed-on: http://codereview.qt-project.org/5897
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
The user can request Javascript break on event. The user can provide
this info in the Breakpoints Window and provide the slot which will
be called when the event occurs. For example: specify "onTriggered" if
you need to break on Timer triggered event.
Change-Id: If936d7402f5978a182132fdcca75515588364e16
Reviewed-on: http://codereview.qt-project.org/4758
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
The dialog is added to Debug->Start Debugging menu option. It specifies the host
and port that the JSDebugClient connects to for listening to debug messages.
Change-Id: I7f828c169ff2338f4780025f72182c5fc8784c4a
Reviewed-on: http://codereview.qt-project.org/4824
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Sends connect command after all initial commands have been sent.
This ensures that the initialization is complete before the start
of the debugging session.
Change-Id: I1903caa9c213fef4e6b40df89a352d80e350a46d
Reviewed-on: http://codereview.qt.nokia.com/3526
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
The v8 engine is blocked till the client is connected to the service to ensure proper hitting of breakpoints.
Task-number: QTCREATORBUG-5412
Change-Id: Iec772cb547a31fef4cccbd4bb1116699c52d20e5
Reviewed-on: http://codereview.qt.nokia.com/3308
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>