The context is stateful and there could be any kind of junk left in it.
In particular, the W3C spec says that it should be set up with a default
clipping path on creation, but it doesn't say what should happen if the
canvas is resized. Thus, we can never be sure that the clipping path is
sane.
Task-number: QTBUG-38297
Change-Id: If04597234e71574573888ce14deac5cf50df4a3f
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
As most of the numbers involved are single precision floats rounding
errors can easily lead to such numbers. Instead of ignoring it set the
range to the smallest allowable value.
Task-number: QTCREATORBUG-11879
Change-Id: If8d08b27cc9e4cf2a63ff4973f519b0d3363178d
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This is insignificant at lower zoom levels but becomes really annoying
when closer to the 500ns limit.
Task-number: QTCREATORBUG-11879
Change-Id: Ide0069f7c6b135aa31262a4396559fa3ba89f8e3
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
This prevents some overflows when zooming into the timeline.
Task-number: QTCREATORBUG-11879
Change-Id: I968c4737af8c64798d196a1463268d86146864e7
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>
The documentation indicates that onPaint can actually be called
while the context isn't ready.
Change-Id: I32d861e016e5e990f3d940a35ec28956902041ba
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The canvas integrated in QtQuick does the same thing. We can remove a
lot of code like this.
Change-Id: I6425ae4e1b542107defd9d76fa5755712a0f8613
Reviewed-by: Ulf Hermann <ulf.hermann@digia.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Smaller ranges shouldn't be useful for anything but create rounding
errors all over the place.
Task-number: QTCREATORBUG-10880
Change-Id: I5cf5e2c08b5cae676717ba8ada1cddee4523c399
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
The left handle of the range mover element didn't properly follow
the mouse movement. Also, a lot of code is duplicated between
RangeMover and SelectionRange. This change prepares RangeMover for
being reused in SelectionRange by eliminating external
dependencies.
Task-number: QTCREATORBUG-10762
Change-Id: Ia3b83101263e7af8ed46e1aaf4e92654b0068861
Reviewed-by: Kai Koehne <kai.koehne@digia.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>
also
QmlProfiler: refactor eventlist state
If unexpected data is received, assuming server stopped profiling.
Also, introducing a eventlist state instead of relying on
signals sent around. This is part of a coming bigger patch
where the profiler client is refactored.
Change-Id: Ibed9007903956daf03cc0fcb90f77b5ad2d3cf90
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>