platform/upstream/qtdeclarative.git
9 years agoGet rid of the tmpProperty in StringObject
Lars Knoll [Thu, 30 Apr 2015 21:50:50 +0000 (23:50 +0200)]
Get rid of the tmpProperty in StringObject

This was a bad hack. The new code is cleaner, and should
also perform faster in a couple of cases (avoiding the creation
of a temporary String that is then only thrown away).

Change-Id: Ia6f978e037506484adbc01a61606307d4645b343
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix Object::getOwnProperty API
Lars Knoll [Thu, 30 Apr 2015 21:29:28 +0000 (23:29 +0200)]
Fix Object::getOwnProperty API

Don't return a Proprety pointer, this has issues with
StringObject. Instead pass in a pointer that will get filled
with the correct data.

Change-Id: I28536ca129f5be3a4a1bc9583223521458411195
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoSimplify QJSValueIterator code and make it GC safe
Lars Knoll [Thu, 30 Apr 2015 20:31:21 +0000 (22:31 +0200)]
Simplify QJSValueIterator code and make it GC safe

Change-Id: Ie6e4c0d9b8a0b10bedfe32aa6344a2fa8a9a3eac
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix the RegExpCache to be GC safe
Lars Knoll [Tue, 28 Apr 2015 16:54:24 +0000 (18:54 +0200)]
Fix the RegExpCache to be GC safe

Change-Id: I6c20c2c5fcdaefa0743f7c1f50cf6dd8d8edc753
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix docs and remove an invalid ###
Lars Knoll [Thu, 30 Apr 2015 20:08:05 +0000 (22:08 +0200)]
Fix docs and remove an invalid ###

Change-Id: I702529114d3637e48d0159a6b540134b3117b0d1
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMake QV4::Script GC safe
Lars Knoll [Tue, 28 Apr 2015 17:18:40 +0000 (19:18 +0200)]
Make QV4::Script GC safe

Change-Id: I559458278cb6a0bbbc4da441034115aa4c72b058
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoStore rootcontext in a GC safe way
Lars Knoll [Tue, 28 Apr 2015 17:15:25 +0000 (19:15 +0200)]
Store rootcontext in a GC safe way

Change-Id: If81d638c0ccd2b34df918ae5055e309f4eae031f
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove another wrong comment
Lars Knoll [Tue, 28 Apr 2015 16:56:59 +0000 (18:56 +0200)]
Remove another wrong comment

The code below looks perfectly ok.

Change-Id: I966b54b0ea1fd71898c0305da61b046195ab86a5
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoExport QQuickAbstractAnimationPrivate
Michal Klocek [Tue, 9 Jun 2015 08:09:05 +0000 (10:09 +0200)]
Export QQuickAbstractAnimationPrivate

QtLocation requires different interpolators
in coordinate animation, this export is required
to be able to subclass QQuickPropertyAnimationPrivate

Change-Id: I23ed964d165fa5bce8487f8ac4c38ea00a3f3ba8
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
9 years agoVerify that debug client exists before interacting with it.
Ulf Hermann [Fri, 12 Jun 2015 13:10:45 +0000 (15:10 +0200)]
Verify that debug client exists before interacting with it.

We don't want the tests to crash if the connection cannot be
established.

Change-Id: Iebd6d008f6a043b229738d607068ea822fcded9d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoRemove two ### comments
Lars Knoll [Tue, 28 Apr 2015 16:36:32 +0000 (18:36 +0200)]
Remove two ### comments

The comments indicated that the code wasn't GC safe, but it looks
perfectly ok. So simply remove the comments.

Change-Id: Iad5ed8cd615a4c135c35639cfa734c370c73e379
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix the GC unsafe stack variable in Stringify
Lars Knoll [Tue, 28 Apr 2015 16:31:14 +0000 (18:31 +0200)]
Fix the GC unsafe stack variable in Stringify

Change-Id: Icf90f43bedebe05a148499cd2de6726eaa993293
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix another place where we were not compatible with a moving GC
Lars Knoll [Tue, 28 Apr 2015 16:27:15 +0000 (18:27 +0200)]
Fix another place where we were not compatible with a moving GC

Don't store a vector of Heap::String's. Instead allocate them on the
JS stack and simply keep a pointer to them.

Change-Id: Ie12b5f4d56446234519b5e2f0b33120834e927ab
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoCleanup: Store a pointer to the engine not the context
Lars Knoll [Tue, 28 Apr 2015 16:09:11 +0000 (18:09 +0200)]
Cleanup: Store a pointer to the engine not the context

The context is actually only ever used to get to the engine,
so let's rather store that one instead.

Change-Id: Id6ea8044ac3fb2c273b529f18c85af14e7104892
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix GC problem with json conversion methods
Lars Knoll [Tue, 28 Apr 2015 16:02:23 +0000 (18:02 +0200)]
Fix GC problem with json conversion methods

The ObjectSet used to protect against recursion is not safe
against a GC that moves objects around. Fix this by storing
pointers to QV4::Object in there instead.

Change-Id: I88bcac330246a1c9180caed13be1f6ab5c40a6ae
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix some function signatures
Lars Knoll [Sun, 26 Apr 2015 20:58:49 +0000 (22:58 +0200)]
Fix some function signatures

Add a const several places and pass values by pointer, not
reference. This allows us to also get rid of some Scope's.

Change-Id: I3b4c29c22511c947d024457e7b8fa2aaa6bec55d
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove unused typedef
Lars Knoll [Sun, 26 Apr 2015 20:30:17 +0000 (22:30 +0200)]
Remove unused typedef

Change-Id: I19b077334705d00a2c8b2800f89962f04eb37212
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoGet rid of qv4qmlextensions
Lars Knoll [Sun, 26 Apr 2015 12:24:08 +0000 (14:24 +0200)]
Get rid of qv4qmlextensions

It only contained the proto for the value type wrapper. Instead
just create it lazily, but reserve space on the js stack for it.

Change-Id: I2301549b6dc4007bd5ac848e1dca25aafd583c4a
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoDisable pixmap cache and text input tests if QT_NO_LIBRARY
Ulf Hermann [Thu, 11 Jun 2015 15:49:00 +0000 (17:49 +0200)]
Disable pixmap cache and text input tests if QT_NO_LIBRARY

They depend on loading plugins.

Change-Id: Iee2ec4306a9ee2eae6447ee28552c010e4d31b8c
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoDon't wait forever in QQmlDebugClient test
Ulf Hermann [Fri, 12 Jun 2015 15:21:19 +0000 (17:21 +0200)]
Don't wait forever in QQmlDebugClient test

The test is intended to wait for 5 seconds but in fact it waited for
5 * 30.1 seconds.

Change-Id: Id2af7513fc7af6ab5e67d04d802a24744483f5e1
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoInitialize members of tst_QQmlEngineDebugService
Ulf Hermann [Fri, 12 Jun 2015 12:55:49 +0000 (14:55 +0200)]
Initialize members of tst_QQmlEngineDebugService

Change-Id: Id9fe7d2bd630bcfe79634b3a4465ec7ad764d18c
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoQuickTest: Enable use of BLACKLIST file
Caroline Chao [Tue, 2 Jun 2015 12:49:23 +0000 (14:49 +0200)]
QuickTest: Enable use of BLACKLIST file

So qml test functions can be blacklisted. Qml test functions have the
following format: TestCaseName::functionName.

Change-Id: Ifcaa8d77d8f0956472aa568dc6dbfcbdde4e5063
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
9 years agoqmlprofiler: Remove some dead code
Ulf Hermann [Fri, 12 Jun 2015 08:17:56 +0000 (10:17 +0200)]
qmlprofiler: Remove some dead code

Change-Id: If1f542bc73d5af259ea3c0a5da40786f8d6f3dbf
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoDon't resolve the d-pointer when we don't use it.
Ulf Hermann [Thu, 11 Jun 2015 15:52:54 +0000 (17:52 +0200)]
Don't resolve the d-pointer when we don't use it.

Change-Id: Ia8551e28dcd237a536038ed7f658a3d1164706c6
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoAdd QQuickWindow::TextureIsOpaque as option to createTextureFromImage.
Gunnar Sletta [Thu, 11 Jun 2015 08:17:45 +0000 (10:17 +0200)]
Add QQuickWindow::TextureIsOpaque as option to createTextureFromImage.

Opaque textures can be a lot faster, so give this option without
forcing the user to reimplement her/his own QSGTexture class.

The old behavior was that createTextureFromImage() disregarded
TextureHasAlphaChannel and looked solely at the image's format. To
keep this behavior intact, we introduce a second opt-in flag to switch
textures from auto-detect to false, namely TextureIsOpaque.

[ChangeLog][QtQuick][QQuickWindow] Add TextureIsOpaque option to
createTextureFromImage()

Change-Id: I248db4bc5f7920864b6aa8d831ce24d23ad370ef
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
9 years agoQQuickPositioner: move paddings into extraData
Liang Qi [Tue, 9 Jun 2015 09:02:12 +0000 (11:02 +0200)]
QQuickPositioner: move paddings into extraData

Includes Column, Row, Grid and Flow.

Task-number: QTBUG-46529
Change-Id: Ib49e4fa08d95a94b3eca9fc20865acb9281aaad1
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
9 years agoQQuickTextEdit: move paddings into extraData
Liang Qi [Mon, 8 Jun 2015 23:35:49 +0000 (01:35 +0200)]
QQuickTextEdit: move paddings into extraData

Task-number: QTBUG-46529
Change-Id: I67b8125d160213121b30fbb44fa834609d668099
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
9 years agoQQuickTextInput: move paddings into extraData
Liang Qi [Mon, 8 Jun 2015 11:59:09 +0000 (13:59 +0200)]
QQuickTextInput: move paddings into extraData

Task-number: QTBUG-46529
Change-Id: Ifa072dccdf2dc8c52c6865d13ccf1930c92ec51d
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
9 years agoQQuickText: move padding into extraData
Liang Qi [Mon, 8 Jun 2015 11:22:59 +0000 (13:22 +0200)]
QQuickText: move padding into extraData

Task-number: QTBUG-46529
Change-Id: Ifce670a59c367dc1b211ad2c7e797e3a7808cdb2
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
9 years agoMark unused parameters as Q_UNUSED
Ulf Hermann [Thu, 11 Jun 2015 15:54:32 +0000 (17:54 +0200)]
Mark unused parameters as Q_UNUSED

Change-Id: I4f859916debfb39d822a9c2a9c8bdf675d70d702
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
9 years agoRemove explicit marking of the typedarray constructors
Lars Knoll [Sun, 26 Apr 2015 09:09:02 +0000 (11:09 +0200)]
Remove explicit marking of the typedarray constructors

These objects live on the JS stack and are thus marked implicitly.

Change-Id: I8295d8096d0a47861e0092c36e16b95db458de3c
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoGet rid of TypedValue
Lars Knoll [Sun, 26 Apr 2015 09:02:40 +0000 (11:02 +0200)]
Get rid of TypedValue

Now that Managed inherits from Value, this class doesn't
make sense anymore.

Change-Id: I04e10f53ef305658d902bd0f1c7d7280068c0dc3
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoGet rid of StringValue usage in QJSValueIterator
Lars Knoll [Sun, 26 Apr 2015 08:56:38 +0000 (10:56 +0200)]
Get rid of StringValue usage in QJSValueIterator

Change-Id: I86badf9944b335041d16423be9a5434d1098cbb0
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMove the StringValue members of ExecutionEngine onto the JS stack
Lars Knoll [Sun, 26 Apr 2015 07:22:17 +0000 (09:22 +0200)]
Move the StringValue members of ExecutionEngine onto the JS stack

Change-Id: Ib55c05f1730b7659e2f6fee7e1fa79c10c759167
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove a global read-write QQmlBinding::Invalid variable
Lars Knoll [Thu, 23 Apr 2015 20:03:31 +0000 (22:03 +0200)]
Remove a global read-write QQmlBinding::Invalid variable

Change-Id: I3ca148ae021ffc349b943231cc749828b0b7816c
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoSave one more pointer on each binding
Lars Knoll [Thu, 23 Apr 2015 19:57:06 +0000 (21:57 +0200)]
Save one more pointer on each binding

Fold the isAddedToObject flag into the nextBinding pointer.
Reorder the members to avoid holes in the data.

Change-Id: I0a216940f52020a5d48a6ed05cc236c248161b08
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoGet rid of QQuickStateActionEvent::Reason
Lars Knoll [Thu, 23 Apr 2015 13:19:52 +0000 (15:19 +0200)]
Get rid of QQuickStateActionEvent::Reason

This doesn't do anything useful anymore afaict now that bindings are
refcounted.

Change-Id: I829facaa1bd463f90653a4190f08f8d04f31a6a4
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix up tst_qquickbehaviors.
Friedemann Kleint [Wed, 10 Jun 2015 08:36:53 +0000 (10:36 +0200)]
Fix up tst_qquickbehaviors.

- Use QVERIFY2() instead of  QVERIFY() in flaky currentValue().
- Use QScopedPointer consistently, remove delete statements.

Change-Id: I8b70d206d26219dba31b0d07216bcb18ff665632
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMake bindings refcounted
Lars Knoll [Tue, 21 Apr 2015 14:42:56 +0000 (16:42 +0200)]
Make bindings refcounted

Refcounting our bindings greatly simplifies our memory management
of the objects and ensures we safely clean them all up. In addition,
it allows us to remove the m_mePtr and weak reference handling from
QQmlAbstractBinding as we can safely handle this through the same
mechanism.

Change-Id: If23ebc8be276096146952b0008b62018f5d57faf
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoObjectModel: add API for dynamic changes
J-P Nurmi [Mon, 18 May 2015 15:37:19 +0000 (17:37 +0200)]
ObjectModel: add API for dynamic changes

Following the ListModel API:
- object get(index)
- append(object)
- insert(int index, object)
- move(int from, int to, int n)
- remove(int index, int n)

[ChangeLog][QtQml][ObjectModel] Added get(), append(), insert(), move()
and remove() methods.

Change-Id: I592e55b7c4c933a1100191bf5a9405944b347172
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
9 years agoAdd an assert and simplify the code
Holger Hans Peter Freyther [Sun, 7 Jun 2015 09:37:49 +0000 (11:37 +0200)]
Add an assert and simplify the code

QV4::QObjectWrapper::wrap will unconditionally dereference
the engine. So simply assert that there is an engine.

Fixes Coverity CID 10631.

Change-Id: Ia645e32813b351abce1df06cfb63ef8ef956b9a6
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoItem views: don't assume that attached objects exist
J-P Nurmi [Wed, 3 Jun 2015 13:55:30 +0000 (15:55 +0200)]
Item views: don't assume that attached objects exist

Attached properties are only on objects created by QML. In case
a QQmlInstanceModel contains items that were created in C++, the
attached properties object doesn't exist. Adding the missing null
checks avoids a crash in such scenario.

Change-Id: I93148ac6cefa4cb83a8a7eb24a84b125aaa443d2
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
9 years agoRemove QSGSharedDistanceFieldGlyphCache.
Robin Burchell [Fri, 13 Feb 2015 21:36:48 +0000 (22:36 +0100)]
Remove QSGSharedDistanceFieldGlyphCache.

No known users of this interface exist, and not having it helps to make things
less complicated.

Change-Id: I3d749cfbde9e84e1c7b8dc5cbd952c5c51d347ee
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoqmlprofiler: Allow specification of features to record
Ulf Hermann [Thu, 21 May 2015 08:35:42 +0000 (10:35 +0200)]
qmlprofiler: Allow specification of features to record

Task-number: QTBUG-43066
Change-Id: I963a5a483f961dd150f00de3d96c723c8b62edb8
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoqmlprofiler: Record input events
Ulf Hermann [Thu, 21 May 2015 15:48:58 +0000 (17:48 +0200)]
qmlprofiler: Record input events

Change-Id: Ib6413d97638b192377d7dbeb19ed0c2f733a06a1
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoQQuickImageBase: Minimize the cost for devicePixelRatio setting.
Robin Burchell [Fri, 5 Jun 2015 09:12:11 +0000 (12:12 +0300)]
QQuickImageBase: Minimize the cost for devicePixelRatio setting.

* Don't convert QUrl to QString twice (that massively blows up transient
  allocations and is very slow)
* Don't do anything at all if a sourceSize isn't set (checking it is super
  cheap)

This fixes the performance regression (introduced in 428b92583ee2102c7ef16776a9b7785df7ff4e2c)
in the delegates_image creation benchmark (from ~520 up to ~540 items per frame).

Change-Id: I1cd350e42e763b7a771ff207d23e3e411810b268
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoAdd 28 QList::reserve() calls
Sérgio Martins [Sat, 6 Jun 2015 15:57:33 +0000 (16:57 +0100)]
Add 28 QList::reserve() calls

Change-Id: Id4820ac458f48b10f2bf457144767efdef9e2c07
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
9 years agoMark tests as unstable/flakey
Simon Hausmann [Fri, 5 Jun 2015 11:41:29 +0000 (13:41 +0200)]
Mark tests as unstable/flakey

It failed for example in http://testresults.qt.io/logs/qt/qtdeclarative/baa4a85dbdc4de7d2b4b02b829729dfb46e51305/windows8x86_64windows8x86_64msvc2012developer-build_release_qtnamespace/5aeb8542aafa40f84e974d7ee6346df2b97d1725/testlog.txt.gz while trying to integrate a 100% unrelated doc change.

Change-Id: I6b0b8e76d6cdc72e1343ac42a8277b22e3759c50
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove dead code from the debug service
Holger Hans Peter Freyther [Sun, 7 Jun 2015 10:09:07 +0000 (12:09 +0200)]
Remove dead code from the debug service

!dumpProperties is checked early and leads to an early return.
Remove the dead code.

Fixes Coverity CID 10616.

Change-Id: I61115043417f8f204e741697c9e1fd46b37258b5
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove more unused code from the QQmlEnginePrivate
Holger Hans Peter Freyther [Sun, 7 Jun 2015 09:19:43 +0000 (11:19 +0200)]
Remove more unused code from the QQmlEnginePrivate

overloadError has always been false and the if (overloadError)
was dead code. The code has been commented out for a long time
and I started to extend the #ifdef. The QQmlError is only used
inside the commented out code so I have removed the error param.

This is fixing Coverity CID 10612.

Change-Id: I48f36ede6ba615a34b15caefb0eea5d7e898f120
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove dead code QQmlComponent::createObject
Holger Hans Peter Freyther [Sun, 7 Jun 2015 09:44:58 +0000 (11:44 +0200)]
Remove dead code QQmlComponent::createObject

There is an early check for rv and it is not being
re-assigned during the execution.

Fixes Coverity CID 10613.

Change-Id: I725404c1178dcf72c4444636ead5b0ec7109b2ad
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agodoc: Remove uses of \mainclass
Martin Smith [Thu, 4 Jun 2015 13:13:08 +0000 (15:13 +0200)]
doc: Remove uses of \mainclass

This qdoc command is deprecated.

Change-Id: I4fd7ab301f1fa5b5b9b5db6a7d710ee2f147dfcb
Task-number: QTBUG-46476
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
9 years agoQQmlData: Don't detach QObject::children list.
Robin Burchell [Sat, 6 Jun 2015 11:58:28 +0000 (13:58 +0200)]
QQmlData: Don't detach QObject::children list.

Use a const iterator.

Change-Id: I86177e866e3ec25c4201f9d9a36d23832b0b93db
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoQQuickWindow: Don't use an intermediate vector when diffing SG nodes.
Robin Burchell [Fri, 5 Jun 2015 08:20:15 +0000 (11:20 +0300)]
QQuickWindow: Don't use an intermediate vector when diffing SG nodes.

Instead, turn the node build function into a generator which takes state and
returns the next node to operate on.

This removes ~10mb of transient allocations from the delegates_rect creation
benchmark.

Change-Id: I70fb46b1f134b82d781247e951785fc49576324a
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoqmlprofiler: Output data after application quits in non-interactive mode
Ulf Hermann [Thu, 21 May 2015 13:37:52 +0000 (15:37 +0200)]
qmlprofiler: Output data after application quits in non-interactive mode

Change-Id: I38abed0d5af3bcc7be5fa9e21bde14be40a3ce1d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoqmlprofiler: Redirect app stdout to qmlprofiler stderr
Ulf Hermann [Fri, 22 May 2015 08:59:20 +0000 (10:59 +0200)]
qmlprofiler: Redirect app stdout to qmlprofiler stderr

This seems to be a common technique for tools that wrap application
execution and potentially have their own output.

Change-Id: I4ca1bc5861d5b915b4ca07aec08ad06c8c73c8d6
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoqmlprofiler: Improve options for trace output
Ulf Hermann [Thu, 21 May 2015 15:13:03 +0000 (17:13 +0200)]
qmlprofiler: Improve options for trace output

* Remove the auto-generation of file names.
* Accept file names as parameters or from interactive commands
* Output to stdout by default for better scripting and quick preview
* Decouple output from clearing of data so that you can write the same
  data multiple times.

Task-number: QTBUG-43066
Change-Id: Ia4cc3701cbac7c6f8948b11307130a5d6a2ff44c
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoqmlprofiler: Only accept commands if we ask for them
Ulf Hermann [Thu, 21 May 2015 13:39:28 +0000 (15:39 +0200)]
qmlprofiler: Only accept commands if we ask for them

This way we can shut down the input thread after the last command and we
cannot get commands before we can process them.

Change-Id: Ie1583a338da9c9df0e07c9e09ce185857c5ea66d
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoQQuickText: Don't store node engine per node.
Robin Burchell [Mon, 1 Jun 2015 16:03:04 +0000 (19:03 +0300)]
QQuickText: Don't store node engine per node.

Since these are only used during one particular phase of dealing with text, it
is extremely wasteful to heap allocate them and keep them around for the entire
lifetime of the node (~3kb of total allocation _each_ according to OS X).

Removing these cuts around 100mb of transient allocations off the qmlbench text
creation benchmark (and takes the total allocations during a test run from
~496 MB to ~389 MB). It also improves the approximate throughput for creation
of text items by ~5%.

Change-Id: I45c8a50879ed545da1fb13ab3c2c5d857b112cf7
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
9 years agoQSGDistanceFieldGlyphNode: Use QVarLengthArray to avoid frequent allocation.
Robin Burchell [Tue, 2 Jun 2015 13:30:17 +0000 (16:30 +0300)]
QSGDistanceFieldGlyphNode: Use QVarLengthArray to avoid frequent allocation.

This adds a few more text items/frame on my macbook, and more or less halves the
amount of transient 608 byte allocations (42mb -> 25mb).

Change-Id: Ib1a67c8203f777a2f3b790ff3597d1af34eed2dd
Done-with: Gunnar Sletta
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoQQuickWindow: Move itemsToPolish from a QSet to QVector.
Robin Burchell [Tue, 2 Jun 2015 17:27:21 +0000 (20:27 +0300)]
QQuickWindow: Move itemsToPolish from a QSet to QVector.

QQuickItem already keeps track of whether the polish flag has been set, so the
set provided no functional advantage here, and would have served to pessimize
processing of polish if anything - now adding items to polish and processing
them becomes constant-time operations.

The only operation that is pessimised is removing polish off an existing item:
but this should not be too horrid, unless the number of items to polish stacks
up tremendously.

Change-Id: I5d26dc899570a1e0186018850c21659e1f60a6b3
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoRemove bogus dynamic and static casts.
Sérgio Martins [Tue, 26 May 2015 10:01:01 +0000 (11:01 +0100)]
Remove bogus dynamic and static casts.

QQuickItemPrivate::get() already returns the correct type.

Change-Id: I580d78e72f2ac20abb575dac7ffe468ab10b5c40
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoQQuickTextNodeEngine: Remove unused member.
Robin Burchell [Mon, 1 Jun 2015 15:39:51 +0000 (18:39 +0300)]
QQuickTextNodeEngine: Remove unused member.

Change-Id: I467d8e2c690592cdca84ef3c539afe6df908c9af
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoQSGBatchRenderer: Store the last known free page index.
Robin Burchell [Wed, 3 Jun 2015 11:48:31 +0000 (14:48 +0300)]
QSGBatchRenderer: Store the last known free page index.

Performing a full scan of the pages each time a new node is to be allocated is
wasteful. Instead, store the last known free page, and search from that position
forwards. When an item is freed, reset the last known free page to search
forward from that position. If no free page is found, don't fall back to a full
scan - just allocate a new page.

The  creation of lots of new items is a pretty common pattern (PageStack on
mobile and similar), thus it makes sense to optimize for it and avoid scanning
where possible.

This takes the time to instantiate 142k Rectangles in a single
component from 2433ms on the render thread to 495ms on the render thread (down
slightly from 511ms when using no paging at all, and down from 638ms on 5.3.1).

Separately to this, it may make sense to increase the size of pages, but
ideally, this will wait until there is a shared pool between renderers.

Change-Id: I2b335e230bc28fffcbb38b3fb43f3d441789c256
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoFix users of QTextLayout::additionalFormats to use the new API
Marc Mutz [Sun, 31 May 2015 15:09:44 +0000 (17:09 +0200)]
Fix users of QTextLayout::additionalFormats to use the new API

QTextLayout::additionalFormats setters and getters using QList<FormatRange> have
been deprecated; port to the QVector versions.

Change-Id: I6702430c09b30aa033fe4e34f39a9aa3350e471b
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
9 years agoSome cleanups to QQmlRefCount
Lars Knoll [Mon, 20 Apr 2015 13:07:40 +0000 (15:07 +0200)]
Some cleanups to QQmlRefCount

Rename QQmlRefPointer::take to adopt, as it's a better fit with
the semantics. Get rid of the assignment operator from a raw pointer
and add a Adopt argument to the constructor.

Change-Id: Ia1ebe42b24570f32543e783f91eb3206602772a2
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoReplace bindingType() method by a virtual getter
Lars Knoll [Mon, 20 Apr 2015 07:38:07 +0000 (09:38 +0200)]
Replace bindingType() method by a virtual getter

This removes the need to save some bits in the abstract binding
object, and should make it easier to move QQmlAbstractBinding
over to be reference counted.

Change-Id: Ib46cb3217f3dc462f1dcaa6153d90ea2f7401f48
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMove the writeBinding method into QQmlBinding
Lars Knoll [Fri, 17 Apr 2015 12:21:25 +0000 (14:21 +0200)]
Move the writeBinding method into QQmlBinding

It's only called from there; this simplifies the code and will allow
some further optimizations.

Change-Id: I1f0befe620beaa0bbf961fc829881ef7b5c2e435
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoBlacklist unstable test
Simon Hausmann [Fri, 5 Jun 2015 08:36:37 +0000 (10:36 +0200)]
Blacklist unstable test

Change-Id: I1631d38f8c94e8d663df057f2c417c7ef2045949
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoAdd missing QVector::reserve() calls
Sérgio Martins [Wed, 3 Jun 2015 22:23:50 +0000 (23:23 +0100)]
Add missing QVector::reserve() calls

Change-Id: Iab7c9949941559b4773e5d4a0406dc58cfc70adb
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoDocument API bug for QQmlContext::nameForObject()
Mathias Hasselmann [Wed, 12 Mar 2014 13:05:22 +0000 (14:05 +0100)]
Document API bug for QQmlContext::nameForObject()

QQmlContext::nameForObject() doesn't need a mutable QObject, therefore
the QObject argument should be marked as const.

Change-Id: Ib3cfe197cb4a615850771ccc303796a6c205873e
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix resolving of nested alias properties
Lars Knoll [Thu, 28 May 2015 13:26:10 +0000 (15:26 +0200)]
Fix resolving of nested alias properties

When looping to resolve nested aliases, make sure we use the
correct property index to determine the vme meta object that
contains the next level of alias data.

Change-Id: Id2077b164a4591c86ccb63e8ed3bb997d719731c
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMove the target property index into the common base class
Lars Knoll [Thu, 16 Apr 2015 20:26:44 +0000 (22:26 +0200)]
Move the target property index into the common base class

This unifies some more code between the different binding
classes

Change-Id: I891dc9358cf9598a0c1e21df8a62d6f8a4193985
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMove the target object into the base class
Lars Knoll [Thu, 16 Apr 2015 20:15:27 +0000 (22:15 +0200)]
Move the target object into the base class

Change-Id: I912d7665b49c8e9b2d38e78bfcfc4b3d39ca7459
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoRemove the QQmlPropertyData from the binding
Lars Knoll [Thu, 16 Apr 2015 13:40:33 +0000 (15:40 +0200)]
Remove the QQmlPropertyData from the binding

Simply store the encoded property index instead.

Change-Id: I235030c3d658df3e5df6efafc9c5b2c22200e0a8
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoBlacklist unstable tests for now
Simon Hausmann [Thu, 4 Jun 2015 11:08:44 +0000 (13:08 +0200)]
Blacklist unstable tests for now

Change-Id: Ia29b103c33afd9aafe9ee36ee4447fab17fe00c7
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMake QQuickGridView test independent of mouse speed
Ulf Hermann [Thu, 4 Jun 2015 08:11:57 +0000 (10:11 +0200)]
Make QQuickGridView test independent of mouse speed

In order to prevent it from accidentally hitting the end of the grid
prematurely we insert another mouse click.

Change-Id: I3f1ecc65af4b60aebf383192cde9a3a6fdeb5c8a
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoDecouple flickable stopAtBounds test from mouse event timing
Ulf Hermann [Wed, 3 Jun 2015 13:01:23 +0000 (15:01 +0200)]
Decouple flickable stopAtBounds test from mouse event timing

We don't really want to know if the flickable is still flicking at the
end of the flick() call, but rather if it has been flicking at some
point.

Change-Id: Ib6c89023042b2a45e66f1825a699bb47dc6e13ee
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoQQuickFlickable: Send synthetic release event through QCoreApplication
Ulf Hermann [Mon, 1 Jun 2015 09:00:55 +0000 (11:00 +0200)]
QQuickFlickable: Send synthetic release event through QCoreApplication

As we do this with the press event, we have to do the same with the
release event. The application tracks the state of mouse buttons and
will get confused if an additional press event without symmetric
release event shows up.

Change-Id: Ia27a96fa5b207ed8aaad913caf7575de112e8606
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix flickable autotest
Ulf Hermann [Thu, 28 May 2015 11:02:54 +0000 (13:02 +0200)]
Fix flickable autotest

* Make sure we always wait for window activation, not only exposal.
* When clicking or releasing, first move the mouse to the right place.
* In returnToBounds() show() the window before we rely on its event
  loop.
* In rebound() reduce the delays as mouse events get delivered
  earlier now and the movement might stop and restart if we wait for
  too long between subsequent mouse moves.

Most of these problems have been exposed by commit
66050f2ac875d451bec31e0d8ff507795b5b18d6 in qtbase.

Change-Id: I5a3bc1e4ba92362d69180c8fde33eca47b4b9375
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMove the mouse to the right place before simulating a click
Ulf Hermann [Wed, 27 May 2015 14:43:04 +0000 (16:43 +0200)]
Move the mouse to the right place before simulating a click

Otherwise the mouse event can be split in two and only a mouse move
will be immediately delivered. This problem was exposed by commit
66050f2ac875d451bec31e0d8ff507795b5b18d6 in qtbase.

Change-Id: I9d458bd446c754f566d1de412eb90a43f0686ab9
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoWait for window activation, not for exposal in key press test
Ulf Hermann [Wed, 27 May 2015 13:04:48 +0000 (15:04 +0200)]
Wait for window activation, not for exposal in key press test

The previous version only worked when simulated input events were
queued and thus incidentally delivered after the window activation
that follows the exposal.

66050f2ac875d451bec31e0d8ff507795b5b18d6 in qtbase made event delivery
synchronous for simulated input events.

Change-Id: Ieea3d1360b32f3466059a2ffe570d6dc633f81dc
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoAllow for some delay on starting transitions in flickable test
Ulf Hermann [Thu, 28 May 2015 17:20:48 +0000 (19:20 +0200)]
Allow for some delay on starting transitions in flickable test

Change-Id: I218ea874def6060e147cb05eafeb857a9e66eb44
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMerge remote-tracking branch 'origin/5.5' into dev
Simon Hausmann [Thu, 4 Jun 2015 08:24:46 +0000 (10:24 +0200)]
Merge remote-tracking branch 'origin/5.5' into dev

Conflicts:
src/qml/jsruntime/qv4engine_p.h
src/quick/items/qquickitemsmodule.cpp
src/quick/items/qquicktext.cpp
src/quick/util/qquickpixmapcache.cpp
tests/auto/quick/qquickwindow/tst_qquickwindow.cpp

Change-Id: I90ecaad6a4bfaa4f36149a7463f4d7141f4a516a

9 years agotst_qquickwindow: Prospective fix for instability of cursor test.
Friedemann Kleint [Wed, 3 Jun 2015 12:27:27 +0000 (14:27 +0200)]
tst_qquickwindow: Prospective fix for instability of cursor test.

  FAIL!  : tst_qquickwindow::cursor() Compared values are not the same
     Loc: [tst_qquickwindow.cpp(1444)]

Check that no windows are leaked in slot cleanup and fix all
leaking tests.

Position the window and enlarge it to fix the warning:

WARNING: tst_qquickwindow::cursor() Mouse event occurs outside of target window.

Add window titles to tests.

Replace QVERIFY(a == b) by QCOMPARE(a, b).

Change-Id: Ida892e8a8d7d5f40d4f50787608940dbffc7a29d
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
9 years agoFix flickering when QQuickWidget becomes visible
Joni Poikelin [Fri, 29 May 2015 05:13:58 +0000 (08:13 +0300)]
Fix flickering when QQuickWidget becomes visible

QQuickWidget used short delay before rendering. This caused
black area to flash on the widget briefly. Instead of scheduling
redraw, render scene immediately.

Task-number: QTBUG-46387
Change-Id: I342d96a1aaef3244190221807b0d816815697623
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
9 years agoDocument the render loops a bit more
Laszlo Agocs [Wed, 27 May 2015 13:39:18 +0000 (15:39 +0200)]
Document the render loops a bit more

Task-number: QTBUG-42699
Change-Id: Ib8a1690bfe38bd0686799fac390207c26e5a6812
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
9 years agoPurge use of VisualDataModel from docs where DelegateModel is required
Alex Blasche [Thu, 28 May 2015 09:07:19 +0000 (11:07 +0200)]
Purge use of VisualDataModel from docs where DelegateModel is required

They are the same types except that VisualDataModel is deprecated
and uses a different import statement. Now, references to VisualDataModel
are only used where we explicitly refer to the replacement/deprecation.

Change-Id: I1e68eb5784235a00233b3882c3d91e21e32af7d1
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
9 years agoCalqlatr Demo: Adjust ListView delegate height based on font size
Topi Reinio [Fri, 17 Apr 2015 09:11:48 +0000 (11:11 +0200)]
Calqlatr Demo: Adjust ListView delegate height based on font size

To prevent the list tem text overflowing the delegate boundary.

Task-number: QTBUG-45621
Change-Id: I46f35508ea49a2b435286de76dc9ab49620619a6
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
9 years agoMakes it possible to extract all data from a QML DropArea
Aleix Pol [Sat, 23 May 2015 12:10:36 +0000 (14:10 +0200)]
Makes it possible to extract all data from a QML DropArea

There's many types that aren't being covered by DropArea API, such as
images. getDataAsString is not acceptable, since fromUtf8 chokes on
reading non-utf8.
This patch introduces getDataAsArrayBuffer method that won't try to convert
the data into a QString and simply pass a QV4::ArrayBuffer, that internally
keeps a QByteArray.

Change-Id: I65411b3d365ee6c5e13effd9167156771ee08a05
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoFix the implicitSize of SVG Images on retina display
Jocelyn Turcotte [Wed, 20 May 2015 14:29:45 +0000 (16:29 +0200)]
Fix the implicitSize of SVG Images on retina display

If the user relies on the Image implicitSize to do the layout
but still sets sourceSize to the image, the sourceSize might
be (0, 0) instead of (-1, -1).

readImage checks that the size is > 0 to use the requestedSize
and this would cause us not to use the requestedSize, but still
divide by the devicePixelRatio in QQuickImageBase::pixmapChange,
which would give a different implicitSize on retina display.

Make sure that we get the same implicitSize on both by only
keeping the targetDevicePixelRatio if sourceSize is > (0, 0)
like readImage does.

Task-number: QTBUG-38991
Change-Id: Ib93f57efa47d096f88883845985b44f62db4ad74
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
9 years agoDon't MOTH_END_INSTR(Debug) after beginning a Line
Ulf Hermann [Fri, 22 May 2015 10:31:44 +0000 (12:31 +0200)]
Don't MOTH_END_INSTR(Debug) after beginning a Line

This probably works because Debug and Line have the same internal
structure, but obviously it's fragile.

Change-Id: Ia27a769fa560726cec1ab73dee96f7c1e6812db0
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoqquickwindow: ensure we delete the correct delayed touch event after delivery
Richard Moe Gustavsen [Tue, 19 May 2015 09:20:12 +0000 (11:20 +0200)]
qquickwindow: ensure we delete the correct delayed touch event after delivery

Delivering a delayed touch event from QQuickWindow can cause the event loop
to recurse (e.g if it starts a drag'n'drop). This again can cause new touch
events to be delivered to QQuickWindow, and new delayed touch events to be
stored.

This results in the following:
    (1) Receive new touch press event in QQuickWindow, and set
        delayedTouch to be a copy of it
    (2) Deliver delayedTouch to items. This can cause an event loop
        recursion.
    (3) While inside the recursion, QQuickWindow receives another new
        touch press event. We then redeliver and delete the current
        delayedTouch event created in (1), and set delayedTouch to be
        a copy of the new event.
    (4) Later we return back from (2), and try to access
        delayedTouch (or actually a reference to the touchpoints inside
        it, qquickwindow.cpp:1958). Since the event was deleted in (3), we
        have a crash.

This patch will ensure that we set delayedTouch to 0 before delivering
it (so it cannot be redelivered), and that we safely delete it afterwards
when it goes out of scope. By converting delayedTouch to a QScopedPointer
we also ensure that the event is not leaked upon destruction.

Task-number: QTBUG-45877
Change-Id: Ic372a39a0eb127abfd12cec2d51b3743ad83194d
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
9 years agoMake it possible to grab() a window after it has been hidden.
Gunnar Sletta [Fri, 22 May 2015 06:47:34 +0000 (08:47 +0200)]
Make it possible to grab() a window after it has been hidden.

Windows render loop already had this capability.

Change-Id: I9391e218568cb6951f9f25d74e732aa5ddf9b5bc
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
9 years agoDon't doneCurrent() on hide().
Gunnar Sletta [Fri, 22 May 2015 06:34:42 +0000 (08:34 +0200)]
Don't doneCurrent() on hide().

This hurts interoperability with OpenCL on windows and the other
renderloops don't do it either, so to be consistent, lets not.

Change-Id: Ie06842957561c8933690633469b8b3a026ff399b
Task-number: QTBUG-46273
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
9 years agoFix basic and windows render loops to use the correct screen
Laszlo Agocs [Thu, 7 May 2015 17:14:23 +0000 (19:14 +0200)]
Fix basic and windows render loops to use the correct screen

GLX, and potentially other platforms too, require that compatible
contexts and surfaces are created with the same screen.

This makes Quick functional on X.org configurations where each
physical screen represents a separate X screen on the same X display.

Change-Id: I03c87819e1aee148c880a3caca13d4a0c5409056
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoKeep cursor visible during keyboard interaction
Kai Uwe Broulik [Sun, 17 May 2015 17:00:50 +0000 (19:00 +0200)]
Keep cursor visible during keyboard interaction

This makes it consistent with widgets cursor behavior.

Change-Id: I1be958e0c8afb7c7c8b5ebad5d06b06013e83699
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
9 years agoqmlprofiler: Allow aggregation of multiple traces into one file.
Ulf Hermann [Wed, 20 May 2015 09:35:04 +0000 (11:35 +0200)]
qmlprofiler: Allow aggregation of multiple traces into one file.

Change-Id: Ifc9f9adafa3178e68212fb97914a6f4cae9a4c83
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoqmlprofiler: In interactive mode, don't quit if application quits
Ulf Hermann [Wed, 20 May 2015 11:12:33 +0000 (13:12 +0200)]
qmlprofiler: In interactive mode, don't quit if application quits

We might want to inspect or save the pending data in some special way.

Change-Id: I235b1f948ad4a9ddd100332991243231119bcf08
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
9 years agoqmlprofiler: Remove useless 'maximumTime' member.
Ulf Hermann [Thu, 21 May 2015 08:29:02 +0000 (10:29 +0200)]
qmlprofiler: Remove useless 'maximumTime' member.

Change-Id: Icdb35e0763694312cfb4166df0f537e1845116e8
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>