Commit Graph

31 Commits

Author SHA1 Message Date
Simon Hausmann 156d10e165 Clean up file/error handling in the type loader
Fold the functionality of reading QFile contents via QQmlFile into
QQmlDataBlob::Data. This reduces the dependency on QQmlFile - which is
scheduled for removal - and it makes it possible in the future to avoid
reading the file altogether if we have a cached compilation unit on
disk.

Change-Id: Ieeaf52b6fb1d25665cd3c3b196819e25aba3dd15
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2016-06-20 04:08:53 +00:00
Jani Heikkinen 38ec3bd755 Updated license headers
From Qt 5.7 -> tools & applications are lisenced under GPL v3 with some
exceptions, see
http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/

Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one
(in those files which will be under GPL 3 with exceptions)

Change-Id: I04760a0801837cfc516d1c7c02d4f503f6bb70b6
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
2016-01-20 11:46:25 +00:00
Liang Qi 7063fefe4b Merge remote-tracking branch 'origin/5.6' into dev
Change-Id: I11ea57222ba5aa683b7bfd7735fbc1d2cf86e875
2015-10-14 15:48:12 +02:00
Ulf Hermann 35da68a15c Provide a threaded TestHTTPServer
This allows us to do blocking operations that interact with the test
server in the main thread. The threaded server is used in tests that
don't explicitly require asynchronous operation.

Change-Id: Ibcb28e79a1114cb9cfb812e86aae0a1af71c569e
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-10-14 08:03:38 +00:00
Michael Brasser 6338e98729 Allow forced completion of asynchronous Loader.
Setting Loader::asynchronous from true to false will attempt to force
complete any operations in progress. This allows the user to begin
loading something in the background, and then force the load to complete
once the Loader's content must be viewed.

Change-Id: I056dcc20faacb38b3529c967245416da9949e64a
Task-number: QTBUG-29789
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
2015-09-10 17:57:10 +00:00
Friedemann Kleint e6846850a5 tests/quick: Replace Q[TRY]_VERIFY(a == b) by Q[TRY]_COMPARE(a, b).
- Replace Q[TRY]_VERIFY(pointer == 0) by Q[TRY]_VERIFY(!pointer).
- Replace Q[TRY]_VERIFY(smartPointer == 0)  by
          Q[TRY]_VERIFY(smartPointer.isNull()).
- Replace Q[TRY]_VERIFY(a == b) by  Q[TRY]_COMPARE(a, b) and
  add casts where necessary. The values will then be logged
  should a test fail.

Change-Id: Ib9f4c2486af23c47990be4b9e004b965de226dcc
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
2015-07-27 18:45:21 +00:00
Simon Hausmann e2447f9f5f Merge remote-tracking branch 'origin/5.4' into 5.5
Conflicts:
	.qmake.conf
	tests/auto/qml/qqmlxmlhttprequest/tst_qqmlxmlhttprequest.cpp

Change-Id: I715b8a78b74cbe0dcaf599367fd6e08af4858e11
2015-04-27 14:40:00 +02:00
Simon Hausmann 79d56651ed Prospective fix for flakey "network" related QML tests
Replace hard-coded server ports with dynamically allocated ports.

Change-Id: Iab8f9a88343a9f2c49af3cd700c954c13c3bf121
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2015-04-25 12:02:55 +00:00
Jani Heikkinen c5796292ad Update copyright headers
Qt copyrights are now in The Qt Company, so we could update the source
code headers accordingly. In the same go we should also fix the links to
point to qt.io.

Change-Id: I61120571787870c0ed17066afb31779b1e6e30e9
Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
2015-02-12 10:28:11 +00:00
Jani Heikkinen e7ceacda70 Update license headers and add new licenses
- Renamed LICENSE.LGPL to LICENSE.LGPLv21
- Added LICENSE.LGPLv3 & LICENSE.GPLv2
- Removed LICENSE.GPL

Change-Id: I84a565e2e0caa3b76bf291a7d188a57a4b00e1b0
Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
2014-08-25 11:28:46 +02:00
Robin Burchell aa578c4e29 TestHTTPServer: Make listening an explicit operation that reports failure.
Use this to print the error message when listening fails, and switch to always
stack allocating TestHTTPServer instances for easier cleanup.

Change-Id: I63b2bd38963b66611dc08a5c322615d91a91e675
Reviewed-by: John Brooks <john.brooks@dereferenced.net>
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Reviewed-by: Lorn Potter <lorn.potter@jollamobile.com>
2014-03-21 00:09:29 +01:00
Simon Hausmann 16e70231d7 Add a column to the default method error message
This brings both compilers in sync by reporting line and column if doing a signal object
assignment without a default method.

Change-Id: I8b1bf90c4ce3cd7b117ad7eecdbfe319b07b1191
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-03-02 17:10:51 +01:00
Simon Hausmann adaedcb9ea Fix crash in QQuickLoader when source component is garbage collected
It may happen that the QQuickLoader is the last entity left in the system
holding a reference to the QQmlComponent *sourceComponent. We have to let the
garbage collector know about that by keeping a persistent value for it.

Task-number: QTBUG-35334
Change-Id: I715864440378fd9dd4f2d5ef8ff2f171c81ed7ef
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-12-06 15:18:47 +01:00
J-P Nurmi b7032bed67 QQuickLoader: fix the recursion guard for size updates
Task-number: QTBUG-30183
Change-Id: Ic8720e1e35bf2f349d74d2021dd202849da67852
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
Reviewed-by: Caroline Chao <caroline.chao@digia.com>
Reviewed-by: Jens Bache-Wiig <jens.bache-wiig@digia.com>
2013-03-17 14:59:49 +01:00
Frederik Gladhorn 8325f2dead Improve timer dependent tests.
tst_QQuickLoader::loadedSignal depended on
sharing the engine with simultaneousSyncAsync
and that function being run before it.

After each test run call clearComponentCache()
as that is important for caching of the network tests.

The test server would send the item after 500ms.
Sometimes the CI would be faster or slower.
Instead of relying on timing, simply call a function
when the reply should be sent.

Change-Id: Ifb0447041197e1cba103570597a62a2510d31aab
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-03-11 22:16:36 +01:00
Sergio Ahumada 83deab8d1b Update copyright year in Digia's license headers
Change-Id: I6c3bd7bebe3d62d1cfd0fa6334544c9db8398c76
Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-01-10 19:52:37 +01:00
Friedemann Kleint 29152ec520 Stabilize QQuickLoader test on Windows.
Wait until the component is ready in network tests.

Task-number: QTBUG-28611

Change-Id: I3f880ee585199a3c8ba2d672bb365fa60c472499
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
2012-12-19 10:43:52 +01:00
Iikka Eklund 46010aa7a2 Change copyrights from Nokia to Digia
Change copyrights and license headers from Nokia to Digia

Change-Id: Ie7f5d49ed8235d7a7845ab68f99ad1c220e64d5c
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-09-23 08:22:24 +02:00
Matthew Vogt 9a8f869ef0 Stabilize tst_qquickloader test case
Ensure cases are not affected by timer events of incubation controllers
created in previous cases.

Change-Id: Ia633ed142242d000de5f497896a685ca2f26e143
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
2012-07-30 04:23:40 +02:00
Michael Brasser c66d00a7f5 Stabilize Loader test.
Wait for Loader to load its item, rather than using
a fixed timeout value.

Change-Id: I97ee56d0d7161c9c71a5524f108b0f56d92cc3f3
Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com>
2012-07-10 07:18:05 +02:00
Andrew den Exter 94a5193720 Use unique port numbers for http servers in auto tests.
Prevents conflicts when tests are run in parallel.

Change-Id: Ic1652d963da291c7c41b31e2621874824fa575cb
Reviewed-by: Damian Jansen <damian.jansen@nokia.com>
2012-07-05 07:14:07 +02:00
Matthew Vogt 2c4595ad02 Decode directory separators in source URLs
URLs with encoded directory-separator characters are not correctly
processed by QUrl.

Task-number: QTBUG-25981
Change-Id: I78173ef44c4850774b56753335bea34db04c0735
Reviewed-by: Chris Adams <christopher.adams@nokia.com>
2012-06-25 01:50:37 +02:00
Alan Alpert e883fa03ef Emit itemChanged when Loader fails to load a source.
As per the source comment, it is not actually tracked whether item was
null before. This is consistent with the behaviour in loadFromSource,
where setting a source to null always emits item changed.

This is reasonable behaviour, because it only occurs in unexpected error
states where the program logic likely expects a changed signal anyways.

Change-Id: I160ab04dc1b5c578ee508f4adbca65e8da5b16be
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
2012-06-12 15:40:13 +02:00
Martin Jones e8206bf6ab Allow Loader to load non-Item types.
Loader has a more convenient API for loading/unloading components
than the dynamic object creation APIs.  Remove the Item-only
restriction.

Change-Id: I6f9ecc8514ff1e814f7e56a3386814ba211b7e4f
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
2012-06-12 03:22:11 +02:00
Thiago Macieira 44f9412bf7 Change uses of {to,from}Ascii to {to,from}Latin1
This operation should be a no-op anyway, since at this point in time,
the fromAscii and toAscii functions simply call their fromLatin1 and
toLatin1 counterparts.

Task-number: QTBUG-21872
Change-Id: I03084595ddc425a988374b8352fd23e9504ffba6
Reviewed-by: Alan Alpert <alan.alpert@nokia.com>
2012-05-04 10:36:17 +02:00
Chris Adams 5f1b7bf392 Fix erroneous signal emission in Loader
Previously, the incubator wasn't cleared when a Loader was
deactivated.  This commit clears it on deactivate, and also
ensures that the loadedSignal isn't emitted on error.

Finally, it re-enables a network-loading-related unit test.

Change-Id: I5dac92aead2c221c5d45011accf59077f7c9b402
Reviewed-by: Martin Jones <martin.jones@nokia.com>
2012-04-05 09:50:05 +02:00
Martin Jones 2ab873ed5f Size loaded item before bindings are evaluated
If the Loader size is set explicitly we can set the item size
before the bindings are run, and avoiding an additional
anchor layout.

Also ensure item implict size changes are propagated/notified in the
Loader.

Change-Id: Ie22b018b22be8457ccf30b907a26e44260b9cef7
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
2012-03-30 07:40:32 +02:00
Martin Jones 0ecadd9530 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>
2012-03-20 05:37:59 +01:00
Miikka Heikkinen 21e228afa7 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>
2012-03-15 11:25:36 +01:00
Martin Jones 31467e8649 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>
2012-03-15 10:14:37 +01:00
Matthew Vogt b855240b78 Rename QDeclarative symbols to QQuick and QQml
Symbols beginning with QDeclarative are already exported
by the quick1 module.

Users can apply the bin/rename-qtdeclarative-symbols.sh
script to modify client code using the previous names of the
renamed symbols.

Task-number: QTBUG-23737
Change-Id: Ifaa482663767634931e8711a8e9bf6e404859e66
Reviewed-by: Martin Jones <martin.jones@nokia.com>
2012-02-24 04:51:31 +01:00