This allows more precise specification of which event is supposed to be
selected.
Task-number: QTCREATORBUG-11945
Change-Id: Iff2e9bb8569711cc5df72a5ca55956e0091d6163
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Having multiple views not only is bad for performance but also creates
difficult to debug problems on some hardware configurations and is
fairly confusing.
Task-number: QTBUG-38222
Change-Id: I885e800b1ededab9137874105e3b2f9ec88a06e8
Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
By passing signals with identification information of varying accurary
between the different views the event being selected could be changed
while it was selected. By checking the current selection against the
information given in the signal and not reselecting when it matches the
situation is improved.
Also, the selection methods are given more appropriate names. We hardly
ever want to select the "next" event, but rather the "best fitting" one.
Task-number: QTCREATORBUG-11945
Change-Id: I659b4929cb88f4c931a0893aa95a3bc92da5a23b
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This window is dynamically sized so that no integer overflows can occur
when using it in the timeline view instead of the whole trace time.
Task-number: QTCREATORBUG-11879
Change-Id: Id86faaf614b5f833e47ce26bb859b63eb09e7547
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The selectedEventChanged signal was never emitted and aliasing the
selectedItem property was unnecessary.
Change-Id: I2a15ad82bbf20a7ae9a42e17935242fbac7b5129
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Several QML properties need extra treatment to avoid stale data
after clearing. Toggling the visibility of the timeline renderer
doesn't really help there.
Task-number: QTCREATORBUG-11833
Change-Id: I1903d7bd69d6fe31ecc4cadca8e30fa2104fa09a
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
No need to keep properties around that aren't read anywhere.
Change-Id: Ie9300ad646466a6a2368f644a420d8654891805f
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
As a lot of events show up as QML bindings and signals and as
JavaScript functions the events view can be hard to navigate. This
change allows the user to either filter out JavaScript events and make
it look like the old QML events view or filter out QML events and make
it look like the old V8 JavaScript view.
Change-Id: I9e0c1184da21263ae174f322b8fcd8ee5ca13f6d
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
As QQuickView is a window with its own event handling, disconnected
from the main window, we need to relay relevant events manually.
Task-number: QTCREATORBUG-11535
Change-Id: If316225ecc01ddc4255c209d7df70a9cee812596
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This is a temporary fix to work around the fact that the profiler's
loading indicator won't show on top of the timeline view. It's not
particularly beautiful but at least the UI doesn't just "hang" anymore.
A final solution has to be provided in qtdeclarative by allowing widgets
to be placed on top of QML scenes. In principle it's also possible to
change the loading indicators to be actual windows and by doing that have
them stay on top, but the result would be very messy.
Change-Id: Ic774b0792786d7d278da5ba0beda4531f0dba77d
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This allows us to steer the timeline models in a more fine grained
way and avoid duplicate processing of the same data. We don't need
to rebuild everything on stateChanged of the model manager then.
Task-number: QTCREATORBUG-10950
Change-Id: I2aa9a96a33c602f062fc3b644ac06280ba7cd45a
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
As it's hard to pass arguments for signals from non-QML-mapped objects
to QML objects handle the signal in C++ instead and just directly set
the properties.
Task-number: QTCREATORBUG-10943
Change-Id: I039f6938db3d7e64ca1a4bcff2f0f6aa79c65219
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
As the timeline can scroll by itself now we don't need an external
scrolling helper anymore.
Change-Id: I831eaf2302ced7649b4746e5c7d10121d83a4794
Reviewed-by: Aurindam Jana <aurindam.jana@digia.com>
The zoom level calculations were much too complex and introduced
rounding errors in various places. By moving them all into one
place and avoiding circular recalculations of the same thing those
problems are mitigated.
Task-number: QTCREATORBUG-10635
Change-Id: I7316caad1a590964402056a2e6430c8d059ae097
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This restores the functionality of the old zoom slider. It probably
looks a bit different, but it does the same thing.
Task-number: QTCREATORBUG-10635
Change-Id: Idcb19187df066e4b1336df73b122aa567a732dee
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The zoom slider has to be rebuilt in QML as positioning QWidgets on
top of QQuickViews creates various problems we don't want to solve
for such a simple element.
Task-number: QTCREATORBUG-10635
Change-Id: I9aa22edd3e3a4fddb1d04545260ceacf22184260
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Vertical scrolling doesn't work at the moment and has to be implemented
in a different way. Besides, the code tracking the root's vertical
scroll hasn't done anything useful in a long time.
Change-Id: If2add3874cba971bbaace2c22fbf1b2bf0b463b7
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Ulf Hermann <ulf.hermann@digia.com>
Avoid rendering outside of the canvas by forcing the windows
size onto the scene, and also removing the related candidateSize
logic.
In the QtQUick1 based profiler one could scroll the canvas also
vertically, but that doesn't work any more. This is a hot fix
to work around the problem, we can hopefully bring back the
full solution later ...
Change-Id: Ibd3d54f6b98c3764e104116d395a77b880d88bcb
Reviewed-by: Ulf Hermann <ulf.hermann@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Rename the QmlJSDebugClient lib to QmlDebug (shorter names, easier differentiation with the shared/qmljsdebug lib).
Also rename
- QDeclarativeDebug* classes to QmlDebug*
- QDeclarativeOutputParser class to QmlOutputParser
To clarify the features,
- Debugger::QmlDebuggerClient is now Debugger::BaseQmlDebuggerClient
- QmlEngineDebugClient is now BaseEngineDebugClient
- QmlDebuggerClient is now QmlEngineDebugClient
- QDeclarativeEngineDebugClient is now DeclarativeEngineDebugClient
Change-Id: Ie15713730a614c8ab4b637fad0924f95b54e633f
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
The code of the qmlprofiler client has become a bit too complex,
this patch reorganizes the modules in a more sensible way,
having the modules communicate with each other through a
state machine instead of the excess of signals and slots
from before.
Change-Id: I76f7313779888a1bd07a1cdb1acbf2e47aacf42a
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>