Ulf Hermann [Tue, 14 Jul 2015 10:26:56 +0000 (12:26 +0200)]
Adapt to deprecation of QProcess::error(...) signal
Change-Id: Icf708af4ab968c6592f78f90c3758e30dbe9195d
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Albert Astals Cid [Fri, 3 Jul 2015 09:38:50 +0000 (11:38 +0200)]
Do not leak the texture factory for cancelled jobs
Change-Id: Ie18e019402857acd17203681d45adaf32be54fcc
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Michael Brasser [Tue, 7 Jul 2015 21:51:55 +0000 (16:51 -0500)]
Fix potential use of incorrect bounds in delegate tracking.
Using GridView.SnapToRow and GridView.ApplyRange with a top margin
could lead to the view jumping (rather than smoothly transitioning)
when changing the currentIndex.
Change-Id: I6936b378220f59e8d416f7531cf8b6906c723cb2
Task-number: QTBUG-45640
Reviewed-by: Martin Jones <martin.jones@qinetic.com.au>
Frank Meerkoetter [Sat, 4 Jul 2015 19:56:15 +0000 (21:56 +0200)]
Remove unused code
These methods weren't used anywhere.
Change-Id: I002bcead01fc5818846e5d3ccf06bd0adbed5f51
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Rafael Roquetto [Thu, 2 Jul 2015 12:18:10 +0000 (09:18 -0300)]
Fix tst_qqmldebuglocal on QNX.
QNX does not place library functions on the default namespace. Either use
namespace std or explicitly state the namespace prefix.
Change-Id: I1037c16316b9545ea6214289a3af9a549e83613c
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
J-P Nurmi [Mon, 6 Jul 2015 12:51:45 +0000 (14:51 +0200)]
Fix QQuickListViewPrivate::releaseItem()
Fixes a regression introduced by 1e3924d. The FxViewItem gets deleted
by QQuickItemViewPrivate::releaseItem(), so the QQuickItem pointer must
be stored before calling the base class implementation.
Change-Id: I0bcffc7bee8a4cdbebdce0fe2d2b990bfa52dc6c
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Thu, 2 Jul 2015 07:51:04 +0000 (09:51 +0200)]
Use QQmlDebuggingEnabler::StartMode in connectToLocalDebugger
This unifies the API and gets rid of an ambiguous bool parameter.
Change-Id: If9d8906f9cd366cf37bd1bdded7fbd6c62146e32
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Michael Brasser [Tue, 23 Jun 2015 18:13:01 +0000 (13:13 -0500)]
Prevent errors when removing items from Repeater that reference parent.
Use the same ordering as item views and release before unparenting.
Change-Id: I0346342cfcaf9385d8385769795dd5ba35fc43aa
Task-number: QTBUG-46828
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Albert Astals Cid [Tue, 30 Jun 2015 08:35:23 +0000 (10:35 +0200)]
Fix segfault if QQuickImageResponse actually returns an error string
Change-Id: Ieda5250157dea96bcd5a86d0617f1d64156242e7
Reviewed-by: Robin Burchell <robin.burchell@viroteck.net>
Albert Astals Cid [Tue, 30 Jun 2015 08:38:06 +0000 (10:38 +0200)]
Improve QQuickImageResponse::textureFactory documentation a bit
Change-Id: Iabbe4fc3fe1806d8b0740fa3dd9309d6137ccbac
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Liang Qi [Tue, 30 Jun 2015 07:08:35 +0000 (09:08 +0200)]
Merge remote-tracking branch 'origin/5.5' into dev
Conflicts:
.qmake.conf
src/qml/qml/qqmlengine.cpp
src/quick/items/qquickitemsmodule.cpp
tools/qml/main.cpp
Change-Id: Ida8daf6b4d7e675385f2f5514c446e52dedaf136
Liang Qi [Thu, 25 Jun 2015 12:43:27 +0000 (14:43 +0200)]
ListView: more robust output in debug message
Contains essentially the same information, but allows the
item pointer to be null.
Change-Id: Ib848e0050c895facfbf13bddc6fec12df37a66ff
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Liang Qi [Thu, 25 Jun 2015 15:14:40 +0000 (17:14 +0200)]
Fixed a QQuickListView crash
When an ObjectModel item is removed and destroyed.
Task-number: QTBUG-46798
Change-Id: Ia41dd359d9f3ec5b7af85498dc798f7ab55dca3c
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Robin Burchell [Mon, 22 Jun 2015 19:42:26 +0000 (21:42 +0200)]
QQuickFlickable: Accept pixel wheel events as well as angle wheel events.
This fixes the case with two overlapping Flickables both handling
wheel events (i.e. not preventing propagation).
Change-Id: Ie59ffb02c5e9a52055678d662606543a80414c21
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
Sérgio Martins [Mon, 29 Jun 2015 10:14:05 +0000 (11:14 +0100)]
Remove some char pointers from .data section
Without const the compiler introduces indirection, adds pointers in .data
pointing to .rodata. With const no indirection is needed and .rodata is used directly.
The ones I removed weren't used anywhere.
Change-Id: Iec4513469433155b2bc289cd8494edeee4986e02
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Tor Arne Vestbø [Fri, 26 Jun 2015 15:37:50 +0000 (17:37 +0200)]
Add lancelot test for Emoji text rendering / color glyphs
We test both native text rendering and distance field text rendering
(which should switch to native for the emoji glyphs automatically),
in various configurations of text color, opacity, and background
color.
Change-Id: I06178820943cd2a52cf338f7eb5c0fca881cb625
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
Oswald Buddenhagen [Mon, 29 Jun 2015 08:47:36 +0000 (10:47 +0200)]
Bump version
Change-Id: If10035949b42f8481dc182af3d176e68d07d71a3
Robin Burchell [Wed, 24 Jun 2015 10:02:42 +0000 (12:02 +0200)]
QSGThreadedRenderLoop::maybeUpdate: Micro-optimize.
* Put the cheap checks (pointer ones) first
* Don't call currentThread twice as it involves a mutex lock/unlock
Change-Id: I5df92ea99b034301113e9bd34f8a66df1a7e7dfe
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Sérgio Martins [Fri, 19 Jun 2015 16:57:54 +0000 (17:57 +0100)]
Fix inefficient usages of qDeleteAll()
No reason to iterate through all items to create a temporary
QList we don't need.
Change-Id: I3c5388f026ded0290afb9dd35fc7934011c4998d
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Ulf Hermann [Tue, 2 Dec 2014 14:57:06 +0000 (15:57 +0100)]
Add option to use a local socket for QML debugging
Using a TCP debug server comes with a number of drawbacks. It has a
larger overhead than other connection types, the application has to
be able to access the network and there has to be an open port we can
find somehow.
Change-Id: Ia7fb24006b89419988c6504797303d84c3aa1bbc
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Liang Qi [Fri, 26 Jun 2015 12:03:55 +0000 (14:03 +0200)]
Merge remote-tracking branch 'origin/5.5.0' into 5.5
Change-Id: I4020a1b3c59dea18faf7cbcbb78b90fcfc3680f0
Gabriel de Dietrich [Wed, 24 Jun 2015 13:59:45 +0000 (15:59 +0200)]
Fix documentation for ItemSelectionModel
Change-Id: I28f61e1853ea2cc75fbf814f76a7ef09e0d17f5d
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
Ulf Hermann [Mon, 15 Jun 2015 13:51:00 +0000 (15:51 +0200)]
Make QQmlDebugService ctor protected
No one needs a bare debug service.
Change-Id: I45a2f2437f51197707af2743faad1845b8007053
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Fri, 12 Jun 2015 09:53:31 +0000 (11:53 +0200)]
Load inspector plugin by IID, instead of blacklisting file names.
The previous approach only works with a very limited number of
available plugins.
Change-Id: I8515c7f329d6a2fb5ddbf7d91ac61b4ce0c4e550
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Thu, 18 Jun 2015 11:51:48 +0000 (13:51 +0200)]
Fix disabling of text input and pixmap cache tests on QT_NO_LIBRARY
This way it works with the supported -no-feature-library flag to
configure, rather than the unsupportd -D QT_NO_LIBRARY. Also, the
the parts of the tests that can be executed stay active now.
Change-Id: I082b1c84f148a10eaaf4443c931c395bdd1dc4c3
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Thu, 11 Jun 2015 15:59:02 +0000 (17:59 +0200)]
Disable the memory profiler if we cannot load libraries.
Change-Id: I24c28ae2a79f382e10fa6cc5ad16f97f2806c1eb
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Thu, 18 Jun 2015 11:45:47 +0000 (13:45 +0200)]
Disable plugin loading in QQmlDebugServer if QT_NO_LIBRARY
Change-Id: I29682fc069cb457abeca90a1e1f7f7c964ed1607
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Thu, 11 Jun 2015 15:59:55 +0000 (17:59 +0200)]
Don't try to load the QML inspector plugins if QT_NO_LIBRARY
Change-Id: I5bbb9184e4a0614aad3110baef27afde947315f0
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Martin Jones [Wed, 24 Jun 2015 05:56:09 +0000 (15:56 +1000)]
Correctly initialize ListView section attached properties.
During item insertion, indexes of items in the visibleItems list were
not adjusted before new items were created. Section initialization was
broken during insertion because section calculation relies on the
indexes of the items in the visibleItems list. The incorrect section
properties caused spurious section header creation, and layout issues.
Apply the index offset before creating the new items. This mirrors what
GridView already does.
Change-Id: I549a81825cf0e979bc5830840bf6cb75c7a82cac
Task-number: QTBUG-43873
Reviewed-by: Bea Lam <bea.lam@jollamobile.com>
Dmitry Volosnykh [Thu, 21 May 2015 07:52:49 +0000 (10:52 +0300)]
Clear stringCache explicitly instead of asserting its emptiness.
This assumption does not hold when PathView's path.pathElements list is
updated with new contents at runtime.
Task-number: QTBUG-46255
Change-Id: I6b0d7ee8ee2d67ca0138eacdf0ad221338f788e4
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
Laszlo Agocs [Tue, 23 Jun 2015 16:39:40 +0000 (18:39 +0200)]
Fix missing images when alpha and shader effects are involved
Once we hit removedFromAtlas() and the glCopyTexImage2D() path, bad things
tend to happen with OpenGL ES, both on certain embedded devices (Beaglebone, RPi)
and ANGLE.
ANGLE just rejects GL_BGRA_EXT with INVALID_ENUM. So if it fails, just try
with GL_RGBA. The BGRA extensions do not mention glCopyTexImage2D in any form
and in plain GLES (any version) BGRA does not exist. So rejecting it may be valid,
depending on how one reads the specs.
Same problem on Beaglebone, where the call with BGRA fails as INVALID_OPERATION.
The RPi 1 and 2 fails in a different way: the temporary framebuffer is not complete
because BGRA textures are not supported as color attachments. So our only choice
here is to do what we do for some Android devices already: ignore BGRA support.
Task-number: QTBUG-46806
Change-Id: I89b3b38bf7f8883c39509606ec5ae525f131292b
Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Nico Vertriest [Thu, 4 Jun 2015 10:41:56 +0000 (12:41 +0200)]
Doc: resize tables with overflow
Task-number: QTBUG-46475
Change-Id: Iebb2f7677f8b514d2b3e08480abfc98a0e155c1c
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Robin Burchell [Wed, 24 Jun 2015 12:44:26 +0000 (14:44 +0200)]
QJSValue: Remove no-longer-existent v8 from benchmark.
Change-Id: Ie83a4ec1d3eb20297bbb5a4a6a400091d9568a1f
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
J-P Nurmi [Wed, 24 Jun 2015 13:57:01 +0000 (15:57 +0200)]
qquicktextedit_p_p.h: cleanup unneeded include
A forward declaration of QQuickTextControl is enough. This solves
a linking error on Windows, when QQuickTextAreaPrivate inherits
QQuickTextEditPrivate.
Change-Id: I05a2fa5745e27eea51f7c0a5a0360c3fbb563544
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Robin Burchell [Sat, 6 Jun 2015 09:19:38 +0000 (11:19 +0200)]
QQuickAnchors: Use a simple sorted list rather than a QSet to remove duplicates.
This is significantly less allocation-happy than QSet (removing around 30mb of
transient allocations when creating 5000 instances of one of the creation
benchmarks).
It increases the count of delegates_tworects per frame from ~520 per frame to
~600 per frame for me.
Change-Id: If7edd56890c93e0caf7957d08e80506e87491773
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
J-P Nurmi [Thu, 18 Jun 2015 19:38:57 +0000 (21:38 +0200)]
Export QQuickTextInputPrivate and QQuickTextEditPrivate
...so that QtQuick.Controls 2 TextField and TextArea can inherit them.
Change-Id: I9383927c51a70848753a9f41f374d4161000fbb1
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
Robin Burchell [Mon, 22 Jun 2015 12:25:31 +0000 (14:25 +0200)]
QQuickImageBase: Use the static form of QFile::exists().
This avoids the penalty of creating a QFile along with a private, engine, etc
when we're going to do nothing with it. This raises the delegates_image creation
benchmark from ~450 to ~500 per frame for me.)
Change-Id: I7665a55a3ee23102325f5d5f330967743b0c8538
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Robert Griebl [Wed, 17 Jun 2015 14:38:47 +0000 (16:38 +0200)]
Force completion of asynchronously loaded components.
[ChangeLog][QtQuick][QQmlComponent] Synchronously complete the loading of a
Asynchronous QQmlComponent, if a PreferSynchronous QQmlComponent is created
for the same url (given that this url does support synchronous loading).
Change-Id: I3291d0569a69bac2aeb4815f1068a426ef2707ef
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Eli Fidler [Fri, 19 Jun 2015 20:44:29 +0000 (16:44 -0400)]
Support 32-bit color bitmap glyphs in native text rendering.
We had been accidentally using the 8-bit alpha glyph shader, which
resulted in rendering solid black outlines of the glyphs.
Task-number: QTBUG-37986
Task-number: QTBUG-45514
Change-Id: Ie8728d50068f58d659e24bc5db2d73e01ca8db75
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Laszlo Agocs [Fri, 19 Jun 2015 10:19:06 +0000 (12:19 +0200)]
Add a property to enable vertical mirroring in QQuickFramebufferObject
[ChangeLog] Added a mirrorVertically property to QQuickFramebufferObject.
Task-number: QTBUG-41073
Change-Id: Ib69cbfe7b2f6ae42913d857460431195ff92e53a
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
Matt Vogt [Mon, 22 Jun 2015 07:40:02 +0000 (17:40 +1000)]
ListView/GridView contentHeight should include delayRemove-d items
When one or more items are in delayRemove state, the ListView's
contentHeight property should include their height. This previously
failed if the delayRemove items were at the end of the visibleItems
list. Also applies to GridView.
Change-Id: Id839e850367a3503123e8ac81dac6ebdccef1a1f
Reviewed-by: Martin Jones <martin.jones@qinetic.com.au>
Julien Brianceau [Wed, 17 Jun 2015 14:39:11 +0000 (16:39 +0200)]
V4: add mips32 disassembler.
Add a rudimentary disassembler for mips32 instruction set.
Although few instructions might be missing, the whole set from
MacroAssemblerMIPS should be covered.
Change-Id: I9b1b9b40537b99098ca65036f671651d04fe1ab6
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Ulf Hermann [Thu, 11 Jun 2015 15:57:56 +0000 (17:57 +0200)]
Don't try to load (or unload) QML plugins if QT_NO_LIBRARY
Most of the code already has those #ifdefs, so let's add the missing
ones.
Change-Id: I2a46d5ab660daa837d9ce432184d0b55818a5dc1
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Fri, 12 Jun 2015 11:07:39 +0000 (13:07 +0200)]
Smaller code cleanups
Change-Id: Id3bc6ea5615a462d7a41ceb1fa18b4fb090e0d51
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Friedemann Kleint [Wed, 13 May 2015 07:59:40 +0000 (09:59 +0200)]
Port from Q_ENUMS to new macro Q_ENUM.
Remove Q_ENUMS in favor of the new Q_ENUM macro which provides registration
as meta enum and a debug stream operator.
QQuickXmlListModel::Status is left unmodified as porting it creates
a link error in tst_qquickxmllistmodel.
Change-Id: Id5e6192c9f85e7c94332508fbd91873ddda31e1a
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Erik Verbruggen [Tue, 16 Jun 2015 08:14:23 +0000 (10:14 +0200)]
V4: fix failing tests for right shifts over 0 bits on non-Intel.
Change-Id: I6a0428be2b81cb6723b591356f78712ef2cc0b8b
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Mon, 15 Jun 2015 14:41:24 +0000 (16:41 +0200)]
Cleanup retrieval of scope and context objects
Change-Id: I9c6174181f950bc4f829727dc6acdfe82fa4e894
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Mon, 15 Jun 2015 14:09:39 +0000 (16:09 +0200)]
Cleanup signature of get/setProperty in the object wrapper
Change-Id: I3612a8fe952656da2239e4baf0b460bef46e3f62
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Mon, 15 Jun 2015 13:52:51 +0000 (15:52 +0200)]
Add some typesafety
Even though the goal is to get rid of the contextwrapper, this
helps in the meantime.
Change-Id: I234ef39f74fb0eee78710884de6a1c90763bce74
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Thu, 11 Jun 2015 14:35:11 +0000 (16:35 +0200)]
Clean up ExecutionContext's for QML
Create a specialized QmlContext instead of re-using
a call context with a QQmlContextWrapper as activation
object.
This saves some memory and opens up the route to getting
rid of the context wrapper in a future commit.
Change-Id: I1591c73932a08564fddf5137ac05bbc6f31dd4d5
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Wed, 10 Jun 2015 12:49:16 +0000 (14:49 +0200)]
Get rid of QQmlIdObjectsArray
The context wrapper can do this directly, and give access to the
array by index. Simplifies code, and is one less object we need
to allocate on the JS heap.
Change-Id: I9d9d3a47920e97c42234a27aa66cd5ae3cc28085
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Wed, 10 Jun 2015 12:37:21 +0000 (14:37 +0200)]
Smaller cleanup in the context wrapper
Change-Id: If9f8139cdb67bd7a1179d8b1ab18bde04e3b2fbb
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Wed, 10 Jun 2015 12:22:08 +0000 (14:22 +0200)]
Smaller cleanup to QQmlJavaScriptExpression
Clean up some of the code to create binding expressions.
Change-Id: I1cd826685713b44166c58b114fa91135a664591d
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Wed, 10 Jun 2015 11:32:20 +0000 (13:32 +0200)]
Simplify property capturing code
No need to inherit from a base class defined in QQmlEnginePrivate.
The capture handling can be a simple value based class without
virtual methods that is allocated on the stack.
Change-Id: Ib0ddf4afcaf154b3f953d8c9322f5bec196d7abf
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 15:51:47 +0000 (17:51 +0200)]
Fix some function signatures and remove an unused function
The returned value of these methods is never used, so save
some cycles and return void.
Change-Id: I7e2430130853af12de9685c4383197c80c151175
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Richard Moe Gustavsen [Wed, 17 Jun 2015 13:10:22 +0000 (15:10 +0200)]
Doc: document work-around for static builds using dynamic object creation
Currently we have no system to detect import dependencies that are
not explicitly added to a QML file (other than qmldir "depends", which
is for plugins only). Until we do, document the work-around.
Change-Id: Ic7244728b63bd1f2eb4bf9734474b3e6e48e26fe
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 21:53:20 +0000 (23:53 +0200)]
QQmlBoundSignal doesn't need a vtable
Change-Id: I229740b6cff12a7b43a9ec5ab5b1c5a216843547
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 18:02:05 +0000 (20:02 +0200)]
Move setting the callback type for the endpoint to the constructor
Change-Id: I1881fc3e79f93e3cfe01a201d60956c460c0d196
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 17:55:42 +0000 (19:55 +0200)]
Save another pointer in QQmlBoundSignal
isEvaluating is not really needed as it's tightly coupled
to the isNotifying flag in the parent class. Use that instead,
to get rid of it.
Change-Id: Ic7274ac54e4d380567522c8a549b98d5ed1a1798
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 17:28:53 +0000 (19:28 +0200)]
No need to store the same data twice
Remove the index member from QQmlBoundSignal, as the
NotifierEndpoint already stores the index.
Change-Id: Idd8848ae1ca97b964ca1be0bab1c8aba540ace43
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 17:11:53 +0000 (19:11 +0200)]
Don't store the qmlscope object in a persistent
This doesn't make sense, as the persistent is never being
used. So either the scope object is being used from somewhere
else in which case it'll be referenced and marked from there,
or it's not being used in which case, we might as well collect it.
Change-Id: I56cb45282cbc795d4c59314c10491dedb9b7d478
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 16:38:29 +0000 (18:38 +0200)]
Get rid of QQmlBoundSignalExpression::ExtraData
The extra data was only used to delay initialization of the
required FunctionObject to the first time evaluate got called.
In addition, the constructor using ExtraData was only ever called
from the debugger. In that case performance can't be critical, so
we can just as well do function object creation at construction time.
This saves one pointer in the object.
Change-Id: I46ce9aa325f0fa95b5b0e374e9c07d673e454dd4
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Sun, 3 May 2015 15:02:55 +0000 (17:02 +0200)]
Get rid of QQmlAbstractBoundSignal
QQmlBoundSignal is the only class inheriting from it, so we might
as well get rid of the abstract base class.
Change-Id: I1b59a5d30d9a6ff1111e54f47530687b47f39d70
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Simon Hausmann [Tue, 12 May 2015 12:01:47 +0000 (14:01 +0200)]
Minor cleanup
Narrow the scope of the match offsets counter, as suggested by the clang static
code analyzer. In the second case we just wrote to the variable but never read
it.
Change-Id: I9e5e22bd27f892e76eccfea8b02f25795b689c36
Reviewed-by: Erik Verbruggen <erik.verbruggen@theqtcompany.com>
Tuomas Heimonen [Wed, 22 Apr 2015 08:21:06 +0000 (11:21 +0300)]
Fix to debug flag DATABLOB_DEBUG
Change-Id: I65ea0283c643371f3debd4a29a5fe4dbcb1c642c
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Lars Knoll [Thu, 30 Apr 2015 22:08:55 +0000 (00:08 +0200)]
Store a Heap::String pointer in StringObject
Change-Id: I926c5bb2dd4f1613af6737d4200e568f0ec13d58
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
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>
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>
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>
Santtu Lakkala [Fri, 29 May 2015 15:40:56 +0000 (18:40 +0300)]
QSGDefaultRectangleNode: Fix gradient position calculations
Change the gradient position calculations to consider full border, not
just half of it, because the border is fully drawn inside the
rectangle, not half outside, half inside.
Task-number: QTBUG-36059
Change-Id: Ie7dec94d9f6e03ae07c612c6e3b1950781973dc7
Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
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>
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>
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>
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>
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>
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>
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>
Morten Johan Sørvig [Tue, 16 Jun 2015 11:44:38 +0000 (13:44 +0200)]
Enable high-dpi mode for qml.app on OS X.
Add missing "NSPrincipalClass" key.
Change-Id: If7d02470ecee9f85731626f26f2381d434db9367
Reviewed-by: Jens Bache-Wiig <jensbw@gmail.com>
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>
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>
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>
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>
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>
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>
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>
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>
Alan Alpert [Thu, 11 Jun 2015 01:40:22 +0000 (18:40 -0700)]
Version scrollGestureEnabled as a new property
Change-Id: I3408cf93a90327e8abbe2f8b7a85d8a84e24ae58
Reviewed-by: Liang Qi <liang.qi@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Friedemann Kleint [Wed, 3 Jun 2015 09:05:12 +0000 (11:05 +0200)]
qml: Output information about build and GL renderer in verbose mode.
Make static contain() a member of LoadWatcher() and connect to
QQuickWindow::onOpenGlContextCreated(). Print information similar
to qtdiag.
Change-Id: I0bc6bc43418e4392c6b5e2643d4f7899ff4f4f8b
Reviewed-by: Alan Alpert <aalpert@blackberry.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>