Andrew den Exter [Mon, 12 Mar 2012 03:39:23 +0000 (13:39 +1000)]
Make TextEdit word selection behaviour consistent.
Word selection initiated by a double click in QTextEdit only selects
a word if the drag point is closer to the end than the start
(assuming ltr selection) which can make it difficult to select small
words with touch input, as such the SelectWords mouseSelectionMode of
TextEdit selected a word if the drag point intersected any part of the
word. Since we no longer have to retain compability for QTextEdit we
can settle on a single behaviour for word selection.
Change-Id: Iaabb7938a2b61b84a290a9ee41e407c83144b96f
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Andrew den Exter [Mon, 12 Mar 2012 02:49:01 +0000 (12:49 +1000)]
Remove unused functions from QQuickTextControl.
Change-Id: I036a2c2ff05cd94a7c58e29bf8743fef3a550fbd
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Andrew den Exter [Fri, 9 Mar 2012 07:40:49 +0000 (17:40 +1000)]
Add additional key sequence tests.
Change-Id: Ie77a61a3ea0d1bdccd59dd519346db74bdf59c44
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Alan Alpert [Mon, 5 Mar 2012 05:02:09 +0000 (15:02 +1000)]
Update touchinteraction examples to new guidelines
Includes adding flickable examples
Change-Id: Ie1a47882bcb8b671f162b2b778dad33ce105407b
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Alan Alpert [Wed, 29 Feb 2012 08:51:23 +0000 (18:51 +1000)]
Add docs for PaintedItem examples
No launcher, because they're C++ examples
Change-Id: Icff2ad31c65d5a878c3818d54ed81cf0d6aa664b
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Alan Alpert [Wed, 29 Feb 2012 07:40:39 +0000 (17:40 +1000)]
Update Squircle example towards new guidelines
Doesn't work properly though. QTBUG-24566 filed for that.
Change-Id: I31a8184456add6060e65bf11323153dc7a80b306
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Alan Alpert [Wed, 29 Feb 2012 07:21:11 +0000 (17:21 +1000)]
Update MouseArea and KeyInteraction to new guidelines
Change-Id: Icf207005a48fa2a994632a88c4238d821622133c
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Alan Alpert [Mon, 19 Mar 2012 05:45:05 +0000 (15:45 +1000)]
Adapt threading examples to new launcher format
Change-Id: Ibfe8732efb71ff49c19724abb8202ca63262150e
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Alan Alpert [Mon, 19 Mar 2012 05:34:28 +0000 (15:34 +1000)]
Rewrite workerscript example
Clearer function, arguable justification for using WorkerScript, and
fits better into the standrad form factor.
Change-Id: I3f29f19961a12adc29b260b3284eb620ad63bf45
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Alan Alpert [Fri, 16 Mar 2012 03:12:57 +0000 (13:12 +1000)]
Sprite minor fixes
Spelling of "motivate", don't send out the message when they didn't set
duration themselves, and update TODO comment.
Change-Id: I4de055f07a1831b9d12798faeda658ff441920f4
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
Charles Yin [Tue, 20 Mar 2012 00:38:55 +0000 (10:38 +1000)]
Fix QQuickTextInput test failure on Windows
Task-number: QTBUG-24790
Change-Id: I1d78df79568389f8c59f99ace9e2d7685b5d8f0d
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Charles Yin [Tue, 20 Mar 2012 01:14:23 +0000 (11:14 +1000)]
Fix tst_qquickitemlayer test failures
The minimum window width in Windows 7 requires more than 100, so make the
item width to 200 to avoid test failures.
Task-number: QTBUG-24787
Change-Id: I439528a94aed9c54eca0fa68651c84afa4f9ab13
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Charles Yin [Tue, 20 Mar 2012 03:49:15 +0000 (13:49 +1000)]
Fix FolderListModel path issue on Windows
Task-number: QTBUG-24777
Change-Id: I819c2e07b23e8740f7570f117dafb2340f7c00e9
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Michael Brasser [Thu, 8 Mar 2012 01:02:30 +0000 (11:02 +1000)]
Always enable value type support in v4.
Change-Id: Ifb4e44aa6d2f13c79319d03e0fd7a4c0c3db06d8
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
Michael Brasser [Tue, 13 Mar 2012 06:24:49 +0000 (16:24 +1000)]
Support null -> QObject and QObject -> bool conversions in v4.
Change-Id: I66602bf52986a388f9b6fe2bcd4630b862138906
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Andrew den Exter [Fri, 16 Mar 2012 01:40:21 +0000 (11:40 +1000)]
Remove warning about not explicitly initializing base class.
Change-Id: I786f2936a4e6c813a041950a550f06951f06bada
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Bea Lam [Thu, 15 Mar 2012 00:15:49 +0000 (10:15 +1000)]
Pull out some duplicate focus-related code
Change-Id: I920a9b75ccbdb3a9b169c7669121734c14d18ff9
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Martin Jones [Tue, 20 Mar 2012 01:58:09 +0000 (11:58 +1000)]
Loader could leak qml contexts if interrupted
If Loader was either destroyed, or its source changed while
it was incubating the itemContext could be leaked.
Change-Id: I5b749062552954d92bf2851250f942b20ebbfe68
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Martin Jones [Tue, 20 Mar 2012 02:45:12 +0000 (12:45 +1000)]
Fix bitfield waste in QQmlContextData
Why we do this at all, I have no idea.
Change-Id: I35c78f4603499d5bb13d4608cc4f5eba0ee342ca
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Martin Jones [Thu, 15 Mar 2012 04:58:03 +0000 (14:58 +1000)]
Restore view to sensible position if grab is cancelled.
If the mouse grab is stolen, return to allowed bounds.
Change-Id: Icc44da32ff62bed273f0ccbb5498766981cdf9a4
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Matthew Vogt [Mon, 19 Mar 2012 05:56:22 +0000 (15:56 +1000)]
Allow parent to be specified for Qt.createComponent
Add an optional parameter to the Qt.createComponent function which
allows the caller to specify the object that will become the parent
for the created component.
If the parent is not specified by the caller, it becomes the QML
engine; this behavior will change in the near future to allow
these component objects to be collected when no longer referenced.
Task-number: QTBUG-24840
Change-Id: I2742133fe8ab8cbc80d8012a9d9b9fc2e4596fca
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Matthew Vogt [Wed, 14 Mar 2012 02:49:36 +0000 (12:49 +1000)]
Ensure JS files imported inside modules work correctly
When a module exports functionality provided by a script, ensure
that imported script modules inside that script resolve correctly.
Task-number: QTBUG-24596
Change-Id: I3885dcc56946423f0d7cf00afdcdfaa0cb11967a
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Kent Hansen [Mon, 12 Mar 2012 18:34:16 +0000 (19:34 +0100)]
Fix compiler warnings in QQmlType
clang said:
warning: expression result unused; should this cast be to 'void'?
[-Wunused-value]
Change-Id: I51f9e2165f3ed550f599f4e3e7693f8e7eebbe1e
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Kent Hansen [Wed, 7 Mar 2012 13:15:44 +0000 (14:15 +0100)]
Fix typo in QQmlXMLHttpRequest::readEncoding()
Change-Id: I266de531c12a4b88db722f220d7693f0b6bae7ff
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Lars Knoll [Sat, 17 Mar 2012 21:50:31 +0000 (22:50 +0100)]
Remove refence to declarative in the docs
Change-Id: I328edc6deee302440cf65de9f87e6b68c93f42b7
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Yoann Lopes [Fri, 16 Mar 2012 11:09:29 +0000 (12:09 +0100)]
Use a single distance-field cache instance for all sizes of a given font.
Previously we had a different cache instance for each font size, but
they all shared the same textures and positions. Only the glyph metrics
were specific to each font size.
The metrics for each font sizes are now calculated by scaling the metrics
of the distance-field size (54px).
Change-Id: I0d9016990dedd93318893506afb1dba7a5249e2e
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Gunnar Sletta [Thu, 15 Mar 2012 15:14:45 +0000 (16:14 +0100)]
Clean up dangling pointers in the particle system
When the scenegraph has been invalidated all node
pointers have been deleted. In the image particle case
the material is managed by the nodes and must also
be reset.
Change-Id: I867f0d36a3ea281a58c21f04c937b16b042ef373
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Gunnar Sletta [Thu, 15 Mar 2012 15:10:35 +0000 (16:10 +0100)]
Reset all node pointers when item is cleaned up
Change-Id: I5878e1d39eca3fa640f16d153924968f72bc9ffc
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Gunnar Sletta [Sun, 11 Mar 2012 08:41:28 +0000 (09:41 +0100)]
Skip warning on perfectly valid usecase
Change-Id: I83fdd2e7c569ebdfea0d21439b4db6d37c1eafa2
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Yoann Lopes [Mon, 19 Mar 2012 13:55:12 +0000 (14:55 +0100)]
Fix possible crash in QSGContext::invalidate()
In some cases QSGContext::invalidate() was called without any current
GL context when the render thread was terminated.
Change-Id: Ia5295c89fe13f2473115c736e328e386d6d4d183
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Aurindam Jana [Tue, 6 Mar 2012 16:25:58 +0000 (17:25 +0100)]
QmlEngineDebug: Simplify the utility classes
Change-Id: Ie0e1b6e9edd6a09fef565635cc793f8bdb6c42e7
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Aurindam Jana [Tue, 13 Mar 2012 16:16:16 +0000 (17:16 +0100)]
QmlEngineDebug: Rename to QmlEngineDebugClient in AutoTest
Change-Id: If20b53d2e47cdc4ed54df0d9360ae1b0566489c6
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Alan Alpert [Mon, 19 Mar 2012 06:46:49 +0000 (16:46 +1000)]
Fix failed rebase
Change-Id: I5d6c6bb50baaa4c1ba986de779bad04ba45947fa
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@nokia.com>
Miikka Heikkinen [Wed, 14 Mar 2012 14:27:10 +0000 (16:27 +0200)]
Fix data file checkout formats in Windows for some declarative tests
Fixed by adding proper .gitattributes for the tests
Task-number: QTBUG-24780
Change-Id: If8de0161a377c21fb5c6327d69e8da84174ee435
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Kai Koehne [Thu, 15 Mar 2012 15:43:36 +0000 (16:43 +0100)]
EasingCurveEditor: Remove generated headers from .pro file
Change-Id: I21800e2839b70d6678c4958ae9c7b23a4c95f153
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Kai Koehne [Fri, 16 Mar 2012 15:35:23 +0000 (16:35 +0100)]
Debugger: Optimize message sending in v8 profiler
Don't send every message on it's own over the network.
Change-Id: I770bf45573451cb9fb0eb10b374467286ae51093
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
Kai Koehne [Fri, 16 Mar 2012 20:00:42 +0000 (21:00 +0100)]
Debugger: Always disable v4 optimizer if v8 debugger is activated
Don't rely on QML_DISABLE_OPTIMIZER environment variable being set.
Change-Id: Ib1a9d83eb9698adcd3c9a5bbcc74cba382836078
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Aurindam Jana [Tue, 6 Mar 2012 16:25:58 +0000 (17:25 +0100)]
QmlEngineDebugService: Rename service to QmlDebugger
Rename service from QDeclarativeEngine to QmlDebugger.
Send a response for each query.
Change-Id: I01cfeaf3e4116bfd7029d170ee228c159973947c
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Simjees Abraham [Wed, 14 Mar 2012 12:35:17 +0000 (13:35 +0100)]
Debugger: Add optional 'host' argument to -qmljsdebugger
Change-Id: I5bb2e48e2ad2019b8a92f6f8842b88027fcd2d28
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Aurindam Jana [Tue, 6 Mar 2012 22:35:27 +0000 (23:35 +0100)]
QmlDebuggingTests: Separate out public and private tests
Remove dependencies on quick-private from all
possible debugging auto tests and list them under public
tests.
Change-Id: I688b5b36fdf3d6fbcb6cef2a975ecd1bf679af2b
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Kai Koehne [Wed, 14 Mar 2012 13:20:31 +0000 (14:20 +0100)]
QmlProfiler: Make sure there's minimal overhead when not enabled
Do expensive operations directly in the constructor, guarded by
and if (enabled). Also assert if the methods where this isn't feasible
are called altough debugging hasn't been enabled.
Change-Id: Ieaa3c71730042a88af2270203ea747af42ba5c58
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Kai Koehne [Wed, 14 Mar 2012 12:47:41 +0000 (13:47 +0100)]
QmlProfiler: Do not log expression for binding
In Qt Creator 2.5, we're getting the exact text from the local sources anyway.
Change-Id: I419e8e7d8cc8831b682ce619a4f8394e5be49c50
Reviewed-by: Christiaan Janssen <christiaan.janssen@nokia.com>
Charles Yin [Mon, 19 Mar 2012 03:27:51 +0000 (13:27 +1000)]
Skip some font loader tests for Windows
Windows currently does not support font loader yet.
Change-Id: I370e41c1f2e2a45787741414a6e7bf00cc3f6c3e
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Charles Yin [Mon, 19 Mar 2012 03:40:42 +0000 (13:40 +1000)]
Don't change the executable name if only build in debug mode on Windows
Change-Id: I298c14d6ea5829d23a4f8b57b9c2f30546e12e80
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Charles Yin [Mon, 19 Mar 2012 03:46:22 +0000 (13:46 +1000)]
Fix qmldevtools library build error on Windows
$$Qt.qml.sources not recongnized on Windows, use relative path instead.
Change-Id: Ia30acc34eff5193bea66ff06754b1cd2b2524878
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Charles Yin [Mon, 19 Mar 2012 04:05:23 +0000 (14:05 +1000)]
Make qqmlinspector test work on Windows
Change-Id: Ib7399f9a005d3674fcb46c605cea3a8d40c21284
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Chris Adams [Mon, 19 Mar 2012 02:19:53 +0000 (12:19 +1000)]
Notify QQJSE::DW of expression deletion during dtor
QQmlJavaScriptExpression::DeleteWatcher's wasDeleted() function simply
checks to see if the pointer to the expression being watched is null.
This commit ensures that the DeleteWatcher's expression pointer is
set to null during QQJSE::dtor().
Change-Id: I566737bf30b4466ba96d771d9846fc3dd860cd2f
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Kai Koehne [Fri, 16 Mar 2012 13:05:05 +0000 (14:05 +0100)]
Debugger: Fix compilation with C++11
Change-Id: I6f753d14aa381fd29aadfc7c649599beb4ec4a9a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Aurindam Jana [Mon, 12 Mar 2012 13:08:56 +0000 (14:08 +0100)]
QmlDebugging: Object Tree and States List
All created instances are stored under the root context.
Check for the creation context of the object when building
up the tree. Do the same when building up the states list.
Change-Id: I8716d9966a61b8f7cb3ad4b7ab5acd4c94b4cd03
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Martin Jones [Mon, 19 Mar 2012 07:37:02 +0000 (17:37 +1000)]
When clearing an incubator also clear incubators it is waiting for.
If an incubator is cleared while waiting for other incubators
to complete also clear the incubators it is waiting for.
Change-Id: I83470920c0fd8a23d0098849192555f7478bb492
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Martin Jones [Fri, 16 Mar 2012 08:45:39 +0000 (18:45 +1000)]
Resetting a model can cause a crash in views with header/footer.
Geometry listeners were called for deleted header/footer.
Change-Id: I47854178232f8a4ab5e19a931901b49741fec388
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Martin Jones [Fri, 16 Mar 2012 07:01:11 +0000 (17:01 +1000)]
Ensure section header/footer are cleaned up.
If the model is cleared or replaced with an empty one,
the section headers should be released.
Change-Id: Ia2f070c312593743b2c5332a6c69facaf222ee6d
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Martin Jones [Fri, 16 Mar 2012 04:48:58 +0000 (14:48 +1000)]
Don't crash view while changing model.
Set model to null before adjusting view position, as changing
position can trigger a refill() if the view is animating at
that instance.
Change-Id: I4bc20766b1ab906799213b149c84a1bdb268c200
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Andrew den Exter [Mon, 19 Mar 2012 07:27:38 +0000 (17:27 +1000)]
Fix QQuickCanvas test failure.
Switch to a QTRY_COMPARE to allow a little more time processing the
event loop.
Change-Id: I4f14feb5cbc7d11654f6c9089baff4ae67d894db
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Michael Brasser [Mon, 19 Mar 2012 03:33:23 +0000 (13:33 +1000)]
Fix grabbing to wait until the image has actually been grabbed.
Change-Id: I3535c57b5d8dd99c8a6cf24ccb1b56af298fcfe6
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Michael Brasser [Wed, 14 Mar 2012 01:35:13 +0000 (11:35 +1000)]
Fix bug in v4 strict equality.
Change-Id: I184065e0b7c8c6536f2081b9bf03e98992a4c9fe
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Harald Fernengel [Tue, 13 Mar 2012 20:34:05 +0000 (21:34 +0100)]
Small LSB hacks
Enable building QtDeclarative with the LSB compiler
Change-Id: I3a81247670f47db3d861910150a722bc8ac7691a
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Miikka Heikkinen [Wed, 14 Mar 2012 14:42:58 +0000 (16:42 +0200)]
Windows: Fix file URL issues in declarative autotests
Fixed by using testFileUrl() shared utility function where appropriate
instead of testFile() or various other ways file URLs were being
incorrectly used.
Task-number: QTBUG-24779
Change-Id: I48cbd297d419238f42ea45132344b7e5a487b6f1
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Miikka Heikkinen [Wed, 14 Mar 2012 15:09:06 +0000 (17:09 +0200)]
Fix tst_qquickimageparticle test compilation with Visual Studio
MSVC doesn't support setenv or unsetenv functions, so use
qputenv instead.
Change-Id: Ife4eb056e6c87d23774512c61b13a3ae3d8ac9ce
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Martin Jones [Tue, 6 Mar 2012 08:03:33 +0000 (18:03 +1000)]
Allow threaded compilation in an async Loader
Enables threaded compilation for a Loader "source".
Change-Id: I2d60a3ace07aab58f3b8f069e45a2864178c959f
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
Yoann Lopes [Wed, 14 Mar 2012 15:11:10 +0000 (16:11 +0100)]
Support for multiple textures in the default distance field glyph cache.
The default implementation of the distance field glyph cache can now
store the glyphs of one font in several textures, allowing to cache more
glyphs at once. The default maximum number of textures per cache is 3.
Glyphs are recycled when all textures are full.
Change-Id: I28d2d6cf5aa409141e2700b505023f15d3c2cd26
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Alan Alpert [Mon, 12 Mar 2012 02:56:12 +0000 (12:56 +1000)]
Fix merge
Examples are in quick, not qtquick, since the rename merge.
Change-Id: Ideb677752c3ea320bbddba49204d37e8a34e2609
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
Alan Alpert [Mon, 12 Mar 2012 08:48:05 +0000 (18:48 +1000)]
Don't assert if focus is already clear.
Already cleared focus should exit the function without terminating the
runtime.
Task-number: QTBUG-24714
Change-Id: Ia8c6be0d88e43d1f71112acc7bac3eb674f22de8
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Andrew den Exter [Thu, 15 Mar 2012 05:55:24 +0000 (15:55 +1000)]
Don't leak function objects created by VisualDataModel.
Function objects created from a FunctionTemplate are not short lived,
and the objects created by a VisualDataModel can change between
instances meaning a template is needed per instance. So use an object
template as a constructor instead of a function.
Change-Id: I364c6e4f714a623b7adb7475a3ee9862eeeeb119
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Martin Jones [Wed, 14 Mar 2012 06:56:46 +0000 (16:56 +1000)]
Set more sensible Flickable default input filtering parameters
Shouldn't throw anything away by default. Also fix bug that
flicking back into bounds from outside bounds halved velocity.
Change-Id: I3c2d303a9e46910439dc8bfb01771376f634a684
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Chris Adams [Tue, 13 Mar 2012 03:30:39 +0000 (13:30 +1000)]
Fix crash caused by dereferencing collected v8 data
If a var property of a QObject is read after the v8 data associated
with the qobject has been deleted but prior to the DeferredDelete
event being processed, the varProperties array will be null and
a crash will occur.
This patch ensures that we check for this condition in both the
access and set codepaths for var properties, and also ensures
that an object which has previously been queued for deletion cannot
be referenced in JS.
Finally, it adds a unit test to ensure that we don't regress.
Task-number: QTBUG-24748
Change-Id: Idde384ca01e18f4dcf9e376e9379f2c5eb410e14
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Chris Adams [Thu, 15 Mar 2012 00:20:26 +0000 (10:20 +1000)]
Don't allow tst_QJSEngine or tst_QJSValue instance to be collected
Both of those unit tests currently change the ownership of the test
instance object, which could result in it being collected by the JS
GC and deleted if events were processed.
Change-Id: I5a9821fb56e19af1d52fea46e54755875dfbb29a
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Aaron Kennedy [Fri, 9 Mar 2012 08:16:50 +0000 (09:16 +0100)]
Remove binding dependency on QQmlExpression
This is the first step to creating much lighter weight bindings that
are tuned for the specific scenario in which they're used.
Change-Id: Ib985dcff25679b711b5c634bbc891aa7902bf405
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Chris Adams [Fri, 27 Jan 2012 01:33:37 +0000 (11:33 +1000)]
Ensure that dynamic property storing QObject ptr notifies on delete
Previously, when a QObject ptr was stored in a dynamic variant
property, the value of the property could change (to a zero ptr)
if the QObject was deleted without a notify signal being emitted
by the QDeclarativeVMEMetaObject which stores the property.
This commit ensures that such a notify signal is emitted correctly.
Task-number: QTBUG-23451
Change-Id: I5689abd984b177737f8d5f18950838b73ebde328
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Kent Hansen [Wed, 14 Mar 2012 12:39:31 +0000 (13:39 +0100)]
Let V8 throw the exception when QML property lookup fails
Only V8 knows whether a failed property lookup should actually cause
a ReferenceError to be thrown. When evaluating a "typeof" expression,
for example, a ReferenceError should not be thrown even if the
expression involves global variables that don't exist, according to
the ECMA-262 specification.
QML should try to match the standard JavaScript behavior. This is
achieved by simply returning an empty value handle (to signify the
absence of the property), and leaving it to V8 to throw an exception
as appropriate.
Task-number: QTBUG-21864
Task-number: QTBUG-24448
Change-Id: I9945adcab98fc3b801371163367473d6af0ab31a
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Miikka Heikkinen [Wed, 14 Mar 2012 14:56:22 +0000 (16:56 +0200)]
Remove warning about missing file from parserstress test
There is no dummy.qml, so trying to find it will cause a warning
and return an empty string. Since the url is optional anyway and
apparently not relevant to this test, just use empty QUrl directly.
Change-Id: I11ba742dedccd6bdea226f680aa57c957afc7dc7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Miikka Heikkinen [Wed, 14 Mar 2012 14:52:35 +0000 (16:52 +0200)]
Windows: Mark several declarative test cases insignificant
These tests are marked insignificant for now to make CI runs pass.
Insignifications need to be removed once the related issues are fixed.
Change-Id: I3a1d36e5b17cf2f1b2f00b20b615359d96975f2b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Kent Hansen [Wed, 14 Mar 2012 11:51:22 +0000 (12:51 +0100)]
Use the same ReferenceError message wording as V8
Instead of "Can't find variable: foo", use "foo is not defined".
This is in preparation of letting V8 throw the exception when a
property lookup fails on the QML scope object (needed for
QTBUG-24448).
Change-Id: I3c747482a8ef138dad9a85530a4f6b5c4c818a03
Reviewed-by: Aaron Kennedy <aaron.kennedy@nokia.com>
Andrew den Exter [Fri, 2 Mar 2012 07:43:44 +0000 (17:43 +1000)]
Don't store duplicate glyph data in a distance field node.
This saves at least 16 bytes per character and removes the need to
copy data between representations.
Change-Id: Ia8236207bdc4ed8292f7b4c72093ee02d13c0463
Reviewed-by: Yoann Lopes <yoann.lopes@nokia.com>
Kai Koehne [Thu, 8 Mar 2012 14:15:10 +0000 (15:15 +0100)]
Debugger: Print informational messages via qDebug
This allows users to use QT_FATAL_WARNINGS.
Change-Id: I114825764c841030418c956d23575159157dfd69
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Kai Koehne [Wed, 14 Mar 2012 12:21:59 +0000 (13:21 +0100)]
Debugger: Fix autotest for shadow builds
Change-Id: I1b53afeb2a9f0d6e571c5ed87304e85896523488
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Gunnar Sletta [Wed, 14 Mar 2012 11:31:27 +0000 (12:31 +0100)]
fix gl under example to work also on trivial render loop
Change-Id: Ieb6c9c9646b557a7cca952472325c33d265c9262
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Kai Koehne [Wed, 14 Mar 2012 11:37:09 +0000 (12:37 +0100)]
Debugger: Fix autotests on Windows
Remove export macro logic for internal classes.
Change-Id: I4dfa7f8e7bc9b5086e01e40342bd00812d5966bd
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Frederik Gladhorn [Thu, 8 Mar 2012 15:32:05 +0000 (16:32 +0100)]
Remove all accessibility updates to allow changes in qtbase.
In order to integrate pending api changes these are temporarily
removed and will return fixed as soon as qtbase is up to date.
Change-Id: I558b6049ac3342d41d67441ddfba6821fc370533
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Caroline Chao [Wed, 14 Mar 2012 08:05:17 +0000 (09:05 +0100)]
CodeCoverage: Skip headersclean test.
The code coverage tool adds #line when instrumenting the code using the gcc
syntax.
tst_headersclean uses the -pedantic-errors flag which causes a fatal error
when the code is instrumented with the coverage tool.
Similar change was done for qtbase (
4ee14d6f87688492).
Change-Id: I525879ef56463473dd3c9eb91dee4d9b8310cdf9
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Luis Gabriel Lima [Thu, 8 Mar 2012 02:24:18 +0000 (23:24 -0300)]
Fix AND expression in v4
The type of the and expressions, e.g. (a && b), were being assigned
to the type of the right hand expression (b). As reported in
QTBUG-24660, this approach could lead to some unexpected behaviors.
Now, when the left and right hand expressions are of different types,
the responsability to deal with the and expression is delegated to v8.
Task-number: QTBUG-24660
Change-Id: Ic42ebb035e62e2f197c337b2106d00453a99f04c
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Andrew den Exter [Wed, 14 Mar 2012 05:28:27 +0000 (15:28 +1000)]
Fix memory leak with the shared distance field glyph cache.
A new glyph node instance registers its owner element with its
glyph cache which in the case of the shared distance field glyph cache
connects a signal from the cache to a slot on the owner, changing the
text creates a new node but destroying the old node didn't remove the
connection causing them to accumulate over time.
In the glyph node; unregister the owner element from the cache on
destruction, and in the cache only connect an owner element the
first time it is registered and keep a reference count so the
items can be disconnected when registrations from all nodes have
been cancelled.
Change-Id: Ibf32a146e146dbbf4e0556d1bd756465bd8e45ba
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
Chris Adams [Wed, 14 Mar 2012 06:07:03 +0000 (16:07 +1000)]
Disable particle-related examples from tst_examples
CustomParticle and ShaderEffect are currently broken.
Disabling these examples until they can be fixed.
Task-number: QTBUG-24034
Change-Id: Ic1ebba1f66f28495822cd729af1e1c24acad79da
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
Gunnar Sletta [Thu, 8 Mar 2012 22:15:11 +0000 (23:15 +0100)]
Fix wrap modes not being set.
Change-Id: Id75ae3f01e6ed72b4a754e05bd55d5ed73b56920
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Gunnar Sletta [Fri, 9 Mar 2012 10:47:42 +0000 (11:47 +0100)]
Remove use of redundante nullPixmap image reference
Change-Id: I40b82c25c813722a94d9897e1f2e1dd8a1681762
Reviewed-by: Kim M. Kalland <kim.kalland@nokia.com>
Martin Jones [Wed, 14 Mar 2012 02:41:37 +0000 (12:41 +1000)]
Reuse a QQuickCanvas in examples auto test.
Much faster than creating a new one for each example.
Change-Id: Ic32f244047e0dba78134ba0e3d368260be838f1e
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Charles Yin [Wed, 29 Feb 2012 01:48:06 +0000 (11:48 +1000)]
Refactor canvas examples by following the new example guidelines.
Change-Id: I1cc749ad11b8439239ba739f40e99b78af7351ab
Reviewed-by: Yunqiao Yin <charles.yin@nokia.com>
Michael Brasser [Thu, 8 Mar 2012 04:41:40 +0000 (14:41 +1000)]
Support module api objects in v4.
Change-Id: I72911a2c8e0a8613e53861da7b38312e51bf57da
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
Martin Jones [Tue, 13 Mar 2012 23:50:31 +0000 (09:50 +1000)]
Reuse QQuickView in GridView table driven tests
Makes the tests run faster since we're not waiting for a
window to appear all the time.
Change-Id: Id2442cf32055084088c19865499055c7282bcae0
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Charles Yin [Wed, 7 Mar 2012 14:12:58 +0000 (00:12 +1000)]
More refactoring on animation controller
Add a flag and helper functions for disabling user control in QAbstractAnimationJob
class and make it synchronized with QDeclarativeAnimation class's disableUserControl
flag.
Change-Id: Ifa84ab0c78291941469c33f2cafe5f61ee718b2c
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Casper van Donderen [Thu, 1 Mar 2012 17:05:16 +0000 (18:05 +0100)]
Remove the usage of deprecated qdoc macros.
QDoc now has support for Doxygen style commands for italics, bold
and list items. This change applies that change in QDoc to the
actual documentation.
Task-number: QTBUG-24578
Change-Id: I62d203f21df63a95ee236e578b10418fd9680707
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
Charles Yin [Thu, 8 Mar 2012 01:27:04 +0000 (11:27 +1000)]
Implement mouseDrag
Simulates the drag behavior by press-move-move-release mouse events,
we need 2 move events here to trigger the drag threshold.
Task-number: QTBUG-22753
Change-Id: Ic3470c061834b7410c524029d82375cba62afa36
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
Frederik Gladhorn [Wed, 7 Mar 2012 18:50:23 +0000 (19:50 +0100)]
Send accessibility updates for the right item.
Child 0 means the first child.
The index needs to be -1 which the default ctor does.
Change-Id: I71fbdf5a15dd4593178cb250f06d42f601e40d4d
Reviewed-by: Jan-Arve Sæther <jan-arve.saether@nokia.com>
Thomas Hartmann [Tue, 13 Mar 2012 09:27:59 +0000 (10:27 +0100)]
Adding a custom easing curve editor to declarative tools
Change-Id: Ic8ef77792d74ec99b23d85cd8888e0190acc3e10
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Reviewed-by: Alessandro Portale <alessandro.portale@nokia.com>
Andrew den Exter [Fri, 9 Mar 2012 05:22:44 +0000 (15:22 +1000)]
Remove unused init function.
Change-Id: Id66e177a544fd8e019bae86fff6bd04bd0497d7c
Reviewed-by: Yann Bodson <yann.bodson@nokia.com>
Aurindam Jana [Mon, 12 Mar 2012 09:19:05 +0000 (10:19 +0100)]
QmlDebugging: Modify test JSDebug test cases
Add signals that are emitted on debugger responses for
flaky auto tests.
Change-Id: Ic59f559083b2b19fb8eec920dcb76f23125639a8
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Kai Koehne [Thu, 8 Mar 2012 14:01:53 +0000 (15:01 +0100)]
Debugger: Use QStringLiteral where appropriate
Change-Id: I5c33113783834ef0c7292f5f19f12d8c68f42141
Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
Martin Jones [Tue, 13 Mar 2012 05:54:19 +0000 (15:54 +1000)]
Reuse QQuickView in ListView table driven tests
Makes the tests run faster since we're not waiting for a
window to appear all the time.
Change-Id: Ibff3706873dbad2f92d2135eae260368f4f4bb10
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Christiaan Janssen [Thu, 8 Mar 2012 15:50:14 +0000 (16:50 +0100)]
QmlProfiler: updated standalone app
Using a stripped-down version of the profiler data structure.
Change-Id: I93a0b12462edea0ca8a1d0db42aa892aa2afc919
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Toby Tomkins [Tue, 13 Mar 2012 01:17:54 +0000 (11:17 +1000)]
Default image scaling behaviour has changed; fix autotest.
The default image scaling behaviour has changed in qtdeclarative. This
change fixes the autotest to conform to fixed ratio scaling.
Change-Id: I9c901825295fb04cab74c46f61696c5274ddd943
Reviewed-by: Martin Jones <martin.jones@nokia.com>