aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | V4: prevent re-adding currentStmt to the worklist in type inference.Erik Verbruggen2016-03-301-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | Adding the statement that is currently inferred to the worklist can happen when it's a member access where the base is discovered due to static QML lookup. Change-Id: I0e1b7011c4cfd691320d9b8dbcc660a65a558853 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | V4: Fix debug output for the type inference pass.Erik Verbruggen2016-03-301-0/+11
| | | | | | | | | | | | | | | Change-Id: Ia09b9ed4689b850a5575c72d63ca9677baf631e1 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | Allow custom debug connectorsUlf Hermann2016-03-263-32/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expose a generic method for loading connector plugins in QQmlDebuggingEnabler and don't insist on the two known ones when actually loading them. This allows third-party connector plugins to be loaded, for example to pass QML trace events to a generic tracing library. Change-Id: I4f66dfabdbd0c3aff3676f7e2591e0a6c42f8f7f Reviewed-by: hjk <hjk@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | QQmlImportDatabase: Introduce utility message function.Friedemann Kleint2016-03-251-5/+7
| | | | | | | | | | | | | | | | | | | | | Reduces the number of messages that need to be translated. Change-Id: I986d3202ac2dcc6c8e197e19c735dd66dad37f39 Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* | | QQmlEngineDebugService: Make translating the usage simpler.Friedemann Kleint2016-03-251-38/+42
| | | | | | | | | | | | | | | | | | | | | | | | Remove whitespace and formatting from the messages where possible to reduce the chances of them being overlooked by the translators. Change-Id: Ie0d0b29e03b13ae4f46dce1b57dd2a85d427c8c6 Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
* | | SignalSpy: fix qtest_signalHandlerName()J-P Nurmi2016-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Don't add second 'on' prefix if the user passed a signal handler name. Change-Id: I9ba3e61503ca3f9f0ac880dbbb83ca790b98eb47 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
* | | V4: Allow the compiler to inline more small methods.Erik Verbruggen2016-03-203-336/+325
| | | | | | | | | | | | | | | Change-Id: Ib2dc03a2535fcbdb10be2dab39593e8dc224fd93 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | SignalSpy: Support "pressed" signal use-caseGabriel de Dietrich2016-03-181-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some types, e.g. MouseArea, the "pressed" symbol refers both to a signal and to a property. When trying to connect to the signal, we get an error since the engine will resolve to the property instead. We circumvent that by connecting to the signal handler instead, i.e. "onPressed" for the "pressed" signal. Change-Id: I4212b752be4da4ec2209a3447ac41326f1e0bb5d Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
* | | QQuickItemView::forceLayout: Also call layout when d->forceLayoutAlbert Astals Cid2016-03-112-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This way callers of forceLayout get a relayout if the dimension of a delegate that affects the itemview content size has just changed but the itemview content size has not been updated yet. This is useful because sometimes in the QML side you want to do things when the item view delegate size has changed but need the item view content size to be already updated. Change-Id: I846984a841e8e14c84d7a700a7ff736196b60afb Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* | | MouseArea: add source property to mouse eventShawn Rutledge2016-03-1110-9/+215
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It comes from the source() of the QMouseEvent which triggered it. This makes it possible to distinguish real mouse events from those that are synthesized from touch or tablet. And for this we need to import QtQuick 2.7 [ChangeLog][QtQuick][MouseArea] Added mouse.source property to enable distinguishing genuine mouse events from those that are synthesized from touch or tablet events. Change-Id: I568964f63981703bd23e05daac5288518f09d837 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* | | QmlDebug: Reuse packets instead of deleting and recreating themUlf Hermann2016-03-116-36/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reduces memory churn as we don't have to reallocate the various QPacket, QBuffer, QByteArray objects and their private classes all the time. Also, subsequent packets often have similar sizes, which makes it beneficial to preallocate the underlying byte array to the size of the previous packet on clear(). In order not to carry the extra reserved space in the lists passed to the debug server, we squeeze the byte arrays before inserting them into the lists. That detaches and copies them, which would have been done anyway when reusing the same packet for the next message. The result is a reduction in the number of temporary memory allocations from QQmlProfilerServiceImpl::sendMessages() by about 75%. Change-Id: Ief98cd7a93a2e8e840e111dee6b346cae00e06bf Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | QmlDebug: Support sending multiple messages per packetUlf Hermann2016-03-112-12/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reduces the overhead caused by the prepending of service names to packets. When running the planets example from qtcanvas3d through qmlprofiler the average message length, without service name, is 26 bytes. The average full packet, with name and length, is 64 bytes long. In fact, the time between stopping the application and the last message arriving in the profiling client is reduced by 30-50% with this change. Change-Id: I0ffdd0483d45bbe8b092c59a9dcd63c6dc59119c Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | QmlProfiler: Send events in smaller batchesUlf Hermann2016-03-115-10/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This enables more parallel data processing and limits the memory usage. Benchmarks with the "planets" example from canvas3d show that this change reduces the time between the profiling being stopped and the last events arriving in the profiling client by about 50%. Change-Id: Iea16f9e2ae3adf584ec4a3c7fc766eaa21740f98 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | QNX: Fix compilationRafael Roquetto2016-03-091-0/+4
| | | | | | | | | | | | | | | | | | | | | QNX only export library functions into the std namespace. Change-Id: Id5c479bb8b4540e26edabd6f50bc0f3f32e72432 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | Merge "Merge remote-tracking branch 'origin/5.6' into 5.7" into refs/staging/5.7Liang Qi2016-03-0839-139/+221
|\ \ \
| * | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-0739-139/+221
| |\| | | | | | | | | | | | | | Change-Id: Icfa1d61fcc286c3418d4a625de11d2191336fa60
| | * | Prevent cutting in non-Normal echoMode of TextInputJoni Poikelin2016-03-071-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cutting the text in Password mode led to the text being deleted. Cut and copy operations should not be allowed when echoMode is set to a mode other than Normal. Task-number: QTBUG-51231 Change-Id: If75cdaedac7478ecc1a5126ad4a5ecbf32acd1ab Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
| | * | Export some more classes.Marc Mutz2016-03-063-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickSprite is used in QtQuickParticles. Export unconditionally. QQuickScaleGrid is used in auto-tests. AUTOTEST_EXPORT it. Unbreaks UBSan build, which requires access to the classes' type_info. Change-Id: I65b538fe0a4255d1b5c4e2e1212001d356382cb4 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * | QQmlListModelWorkerAgent: fix -Wmisleading-indentation warning (GCC 6, genuine)Marc Mutz2016-03-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Says GCC 6: qtdeclarative/src/qml/types/qqmllistmodelworkeragent_p.h: In member function ‘QQmlListModelWorkerAgent::VariantRef& QQmlListModelWorkerAgent::VariantRef::operator=(const QQmlListModelWorkerAgent::VariantRef&)’: qtdeclarative/src/qml/types/qqmllistmodelworkeragent_p.h:94:34: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation] if (a) a->release(); a = o.a; ^ qtdeclarative/src/qml/types/qqmllistmodelworkeragent_p.h:94:13: note: ...this ‘if’ clause, but it is not if (a) a->release(); a = o.a; ^~ This one is correct. Change-Id: I6315e4afa6a0cf8bb4dd3a599bd7ffe7b6a5c1e4 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
| | * | Let QQmlObjectCreator::setPropertyBinding return false for invalid typesFrederik Gladhorn2016-03-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This in theory happen for attached property types. Fixes Coverity CID 154272. Change-Id: I113797dea8949877cbeac82bae57655170878d4c Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * | Make more ctors explicitMarc Mutz2016-03-039-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added explicit where it was missing. This is not a source- incompatible change, because code that breaks by this is a bug. Let's not have this sitting around in an LTS. Change-Id: Ic198750717799126b4e37817845a8ee4684d631f Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * | AnimatedSprite: don't access deleted scene graph nodesJ-P Nurmi2016-03-033-53/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It’s a bad idea to store a scene graph paint node as a member variable. First of all, it should not access the node outside updatePaintNode(), that is, outside the render thread. Secondly, the node is owned by the scene graph and may be nuked whenever the scene graph feels so. Some creative re-parenting easily triggers a case where AnimatedSprite ends up accessing a node that was already deleted by the scene graph. Change-Id: I89205ac36333a2fcb094121afa61b6409fda5883 Task-number: QTBUG-51162 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| | * | Make public headers compile with -Wzero-as-null-pointer-constantMarc Mutz2016-03-0323-75/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... or equivalent. QtBase 5.6 headers already compile that way, so let the other modules follow suit. Task-number: QTBUG-45291 Change-Id: Ied526fb2d7adc3a68946d6843a6bd6f475ebf864 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| | * | Fix typo in QQmlContext documentationMitch Curtis2016-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | Change-Id: Iea662214988c35473a8526c546f01ac5629308dc Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
| | * | V4: fix bootstrapped builds on Ubuntu 32bit.Erik Verbruggen2016-03-031-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We use 64bit value encoding there, so gcc complained that memcpy would write 8 bytes to a 4 byte pointer value. Change-Id: Ib44372fb0e4bbacf0279930f7f5fcf4bbb5d48bf Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
| | * | Ensure ShaderEffect correctly updates with supportsAtlasTexture.Michael Brasser2016-03-014-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given a simple ShaderEffect with supportsAtlasTexture: ShaderEffect { property variant source: myImage supportsAtlasTextures: true } ensure the atlas subrect used by the ShaderEffect is updated if myImage.source changes. Change-Id: I4560b80ba38c3487b16f53411451fb9891920738 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| | * | QQuickRenderControl: cleanup material cache on invalidateTim Blechmann2016-03-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | invalidate() releases resources, but doesn't clean up the materialCache, resulting in a memory leak Change-Id: I3cf7b7a3b977bb9aa295ef1824c384bcdf9494f2 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | | | Particles: half the number of calls to emittersChanged.Erik Verbruggen2016-03-083-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a particle emitter is not yet complete, calling emittersChanged through both groupChanged and systemChanged is unnecessary. Only connect to those signals once after the component is complete, and then call emittersChanged. Also do not call emittersChanged when the particle system component is not complete yet. Change-Id: I67543ce80c9235bd5f72d95352ec96e97a1cf66b Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | | Particles: factor out t^2.Erik Verbruggen2016-03-081-12/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | According to IEEE754 a * t * t is not the same as a * (t * t), hence the compiler won't lift t^2 out as common expression when in another place 'a' is replaced with 'b'. Now for the particles this doesn't matter as it doesn't need super high precision, nor should any of the calculations come in overflow territory. So by manually introducing t_sq(uare), the compiler can remove duplicate t^2 calculations after inlining. Change-Id: Ibfdb054e34945d7e78eb993fdcedfae886472e83 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | | Particles: consistently use floats for particle data calculations.Erik Verbruggen2016-03-082-64/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This removes float<->double conversions, which makes the auto-vectorized code even smaller. Change-Id: Ic4319b11a3248e3034b65e7be047d99cba84716b Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | | Particles: make many QQuickParticleData members inlinable.Erik Verbruggen2016-03-082-109/+105
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calls to these functions often occur in sets of two (x, y) or even more (x, y, vx, vy, etc). By allowing the compiler to inline, it allows for many CSE opportunities. Also, if your compiler is reasonably good, it will also auto-vectorize the operations. Change-Id: I4bffe4826671dd60683b941a569fc6a7b4b34da7 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | | Particles: replace a QSet<int> with a bit vector for group data.Erik Verbruggen2016-03-083-10/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The reusableIndexes represented a "free-list". Now the allocation behavior in QQuickParticleGroupData::setSize was to grow by (large) chunks. That means that as soon setSize was called, a (big) number of hash entries was created, which are drained over time. This memory would stay around (and probably unused) as long as the group was alive. By using a bit vector, the amount of memory is much more compressed, and finding an entry takes less time. The FreeList "caches" the next free entry, because allocation and de-allocation behavior is that they occur bunches: allocate a number of particles, use them, allocate the same number. Test case: samegame, 1 player, click 1 set of 3 stones, quit. QQuickParticleSystem::emittersChanged(), before patch: - 21 instr. inclusive, 15M in QQuickParticleGroupData::setSize - 23,000 calls to QHashData::allocateNode after: - 13M instr. inclusive, 7M in QQuickParticleGroupData::setSize - 0 calls to QHashData::allocateNode Change-Id: If35ea5ed9b29129f210638f6f59275a24eb6afdc Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | | Particles: Shrink QQuickParticleData by 2 pointers.Erik Verbruggen2016-03-0821-194/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Samegame creates about 23,000 particles, so this reduces the memory by ~180kb on 32bit, so ~360kb on 64bit. Change-Id: I0581524ab232b474c5d43abeabd7ebf6174e740f Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | | V4: Move BitVector to the util header, so it can be re-used.v5.7.0-alpha1Erik Verbruggen2016-03-072-115/+117
|/ / / | | | | | | | | | | | | Change-Id: I994ff9277fbbcebf2e45b3146859eb75264b83f4 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | Copy the inverted property when the QWheelEvent is clonedJan Arve Sæther2016-03-071-1/+1
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-35972 Change-Id: I51efc0a390053f1da41352e4242cc4339c15a372 Reviewed-by: Robin Burchell <robin.burchell@viroteck.net> Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
* | | V4: tweak Phi node data destruction.Erik Verbruggen2016-03-062-15/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Phi nodes can only occur at the start of a basic block. If there are any, they need to be subsequent to eachother, and the first phi node should be the first statement in the basic-block. A number of loops rely on this behavior, so they don't need to walk through the whole list of instructions in a basic-block (e.g. the calls to destroyData in BasicBlock::~BasicBlock). Change-Id: I57763bc6abae271337b0b169cccd26e10ecd9b2d Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | V4 IR: Store the phi-node parameters directly in the class.Erik Verbruggen2016-03-065-47/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Every time one of the paramets was accessed, the chain of loads was: phi->d->incoming->heapdata[i] Now it is: phi[i + offsetof(incoming)] This also removes at least one malloc (for the Data), and usually two (when the number of parameters is <= 4, which is most of the cases). Change-Id: I953e784647148266ae5a49a93a203d0d22cdcb63 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | V4: Replace foreach with range based for loops for statements.Erik Verbruggen2016-03-054-28/+29
| | | | | | | | | | | | | | | | | | | | | | | | Function::basicBlocks() returns a const reference to a QVector, so it can safely be iterated over without qAsConst. Change-Id: Ie9a17edfff7c1fbdc3601121935aef4b41338a35 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | V4: Replace foreach with range based for loops for statements.Erik Verbruggen2016-03-054-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | BasicBlock::statements() returns a const reference to a QVector, so it can safely be iterated over without qAsConst. Change-Id: If4e47e0e113adbc87253bb3478208a3a38fed9e2 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | | V4: Replace foreach with range-based for loops on QVarLengthArrays.Erik Verbruggen2016-03-041-23/+23
| | | | | | | | | | | | | | | | | | | | | | | | QVarLengthArray is not shared, so it will not detach and make a copy of the data when begin() is called. Change-Id: I9114d99fc0cabb17d68993408bea01695754437a Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | Particles: reduce excessive hash accesses to a more passable level.Erik Verbruggen2016-03-0410-92/+192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By caching the group id in the particle emitter, and groups in the painter. Test case: samegame, 1 player, click 1 set of 3 stones, quit. QQuickParticleSystem::emittersChanged(), before patch: - 64M instr. inclusive - 145,880 calls to findNode (29M instr.) after: - 21M instr. inclusive - 0 calls to findNode - 25 calls to QQuickParticlePainter::recalculateGroupIds (9800 instr. inclusive). Change-Id: I4aba9d50100513c6b7cdd230e30b3aecaf84485a Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | Particles: inline 4 methods.Erik Verbruggen2016-03-044-46/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And when in the area, remove 3 unused functions. Benchmark: start samegame, click '1 player', quit. Valgrind result: removes/inlines ~90,000 calls. Change-Id: If911b19b46bf163f7fe678623c068f960296f17e Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* | | Particles: code clean-up.Erik Verbruggen2016-03-046-36/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace QHash<int, QQuickParticleGroupData*> groupData with a QVarLengthArray, and make sure that those integers (== indices) are continuous, re-used, and start at zero. That way a whole bunch of qhash calls, hash node creatrion/deletion, and other overhead is removed. Change-Id: Ie74fab8a3e3c7b6efa15b7b9ceff1d1a3e9820e9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
* | | Document default value of wrapModeAlbert Astals Cid2016-03-041-0/+2
| | | | | | | | | | | | | | | | | | Change-Id: Ie08653c2c89e48349cbc41e8bec5714574302963 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | | V4: Replace foreach loops with range-based for loops.Erik Verbruggen2016-03-031-21/+21
| | | | | | | | | | | | | | | | | | | | | | | | Also replaced some QVectors with std::vectors so calls to clear() will re-use the storage instead of re-allocating it. Change-Id: Ibe7d8509af8d264ea93376288cec15fec7c38f70 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* | | Add more tests for pixel snapping of sizesJan Arve Sæther2016-03-021-0/+31
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-41216 Change-Id: I4456709ec5c4e61183fb4056a5f6d6bd9bd863d5 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
* | | Clear profiling data from QQuickProfiler after reportingUlf Hermann2016-03-021-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is what 5.6 does. It's debatable if this is actually correct, as logically we should report the same global profiling data multiple times, when data for different engines is reported. However, there is no practical benefit for such a "feature". It just wastes CPU time and memory and it makes the client implementation more complicated. Change-Id: I6d2a253d906d3d74c9d9b1f8fc952673c9da3e2a Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | | Change test because of slight behavior change in the layout engineJan Arve Sæther2016-03-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The test was assuming that pixel snapping did not change the minimum size hint of the layout. An upcoming patch to qtbase will change that. Change-Id: I53bed57d086aa9ba9972188b014140c95d7669b9 Task-number: QTBUG-41216 Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
* | | Make test more data drivenJan Arve Sæther2016-03-011-43/+21
| | | | | | | | | | | | | | | Change-Id: Ia1c2d53c77da29337b4453046ddb3d526c7015e4 Reviewed-by: Jan Arve Sæther <jan-arve.saether@theqtcompany.com>
* | | QQuickText{Edit,Input}: Reset selection when becoming readOnly.Robin Burchell2016-03-016-4/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When read only, controls may not be edited or altered, and indeed, a read-only control cannot acquire a selection (as it cannot be interacted with). Leaving an existing selection breaks that implication, so clear it when becoming read-only. [ChangeLog][QtQuick][TextEdit/TextInput] If a control has a selection, it is now cleared when becoming read-only. Task-number: QTBUG-51115 Change-Id: Ife43b97ee3d6b780f09a938868c3ccb2f1b6e6e7 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>