aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Update dependencies on '6.3' in qt/qtdeclarativeQt Submodule Update Bot2022-02-091-5/+5
| | | | | Change-Id: I3a07a1ab080796d52daacce5d253d1da6c527aa3 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Un-blacklist some passing testsShawn Rutledge2022-02-088-22/+0
| | | | | | | | | | | | | | | | Task-number: QTBUG-75786 Task-number: QTBUG-82015 Task-number: QTBUG-82043 Task-number: QTBUG-82404 Task-number: QTBUG-85622 Task-number: QTBUG-85624 Task-number: QTBUG-88541 Task-number: QTBUG-95863 Change-Id: I361afa8b78e2947b12194b6b1212e59db1b20b11 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit b0848d038b7bacfd656fbadc37993a81068132bb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Correctly handle QQuickState::whenFabian Kosmale2022-02-083-1/+46
| | | | | | | | | | | | | | | | | | | | | | | | | 64c1fbe96c68b1286a70242ff4922be140128cb2 fixed that one could not assign a constant value to QQuickState::when. However, as alluded to by a comment in QQState's code, this caused state oscillation, breaking clean transitions between two states. The reason for this issue is that as soon as once of the when condition changes, we check the when condition of all states. However, in the case of logically exclusive cases we can run into the issue that the binding of the second state has not been re-evaluated yet. Thus, we might end up with all states being false, even though the second one becomes true immediately afterwards. To avoid this issue, we force the reevaluation of the binding. However, instead of doing this by using a QQmlBinding property (with all the tooling and runtime issues that it would entail), we keep using a normal property. We then ask the engine for the binding, and if it exists, we reevaluate it to obtain the current value. Fixes: QTBUG-86695 Change-Id: Id10a3549935794b93b29450b0f5dfb6d1df691a1 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit a8c729d83979fb0b9939044d246e73b1d578e65b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qqmlintegration: forward declare QmlExtendedNamespaceFabian Kosmale2022-02-081-0/+2
| | | | | | | | | Otherwise using extended types could lead to build failures. Change-Id: I958bf6a36345339c8b2cc3d0bfb35a89b09044b9 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit df1843dcd6a5297c7cce552e442d2676579410e2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Imagine GroupBox: Ignore background topPadding unless it's a 9PatchImageOliver Eftevaag2022-02-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The background property inherited from QQuickControl is a QQuickItem, which doesn't have properties for padding. The Imagine style GroupBox implementation would use duck typing to access potential padding properties for the background item, and if the background item does not have the padding properties being queried, the expression will resolve to have the 'undefined' javascript value. Since 'undefined' is NaN boxed internally to be a nullptr, the setter for the leftPadding, rightPadding and bottomPadding would essentially be called with the value '0' as the argument. But the topPadding property had a more complex binding, using the + operator in its expression. The javascript expression 'undefined' + 'some number' will evaluate to the value 'NaN', which is what the setter for the topPadding property would end up receiving as the argument value. This patch changes the binding expressions for the padding properties to only add the background item's padding, if the background is a NinePatchImage, which is the default type used by the Imagine style. Fixes: QTBUG-94161 Change-Id: I8de6f47350fa8b6253948fb1be63d651a15d1d58 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit ab46156ee6a8fbe6e50353d2f0c73fdc964bae75) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Make qml resizeToItem configuration url resolution work againShawn Rutledge2022-02-051-1/+1
| | | | | | | | | | Amends 0a1e4cc7ec7548f6273befff9cdddb0bc7a58961 Fixes: QTBUG-100469 Change-Id: I6d0f48fb9b02cc9779233bbb2a93107c93b11ca4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit bc6c16c346aa94f6c4eb9548d256b5c81cdc2a0e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* SwipeView: don't cull every child item that gets addedShawn Rutledge2022-02-052-1/+63
| | | | | | | | | | | | | | | | | | This reverts commit a055629f43cf8589ff6d69e46b2610429aaa4167. A SwipeView is a ListView, which means as long as the side-by-side delegates are the right size, only one of them should occupy the area of the SwipeView itself. The other delegates (isCurrentItem == false) are to the sides, and might be outside the window, hidden under other items, or clipped. So hopefully there are not users who rely on this culling to hide them. Fixes: QTBUG-99547 Task-number: QTBUG-51078 Task-number: QTBUG-51669 Change-Id: Ic90dc1c44b9a36dc717238b47003b4d88e91f789 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit e10de033f4c44855de7287a97e2aa651f648742e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* TreeView: add missing QML_ADDED_IN_VERSIONShawn Rutledge2022-02-041-0/+1
| | | | | | | | | | We don't want it showing up as available in 6.0 and 6.2 in plugins.qmltypes. Amends 18da655b77de70273e1aad7b9c2c4be74f5de91e Change-Id: I5f65f031d03af2fa7203deb8d81f3c2a00586dec Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit 80a7b759abe5a46b93d4cc5305e340995098332b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QmlCompiler: Place code for CmpNeInt in parenthesesUlf Hermann2022-02-044-2/+33
| | | | | | | | | | Otherwise it will apply the '!' to the first argument. Fixes: QTBUG-100480 Change-Id: Iaefa25d062ad8bbd9d4278ffeaa52fc53ed417e2 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit db6459665c4b4a48db9aefebfe310237e7cc92d9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Stop using QGuiApplicationPrivate::lastCursorPosition.toPoint()Shawn Rutledge2022-02-042-5/+5
| | | | | | | | | | | | | | QGuiApplicationPrivate::lastCursorPosition is initialized with qInf(); so before the mouse cursor has moved, attempting to convert to QPoint is an error. QWindow::mapFromGlobal(const QPointF &) exists in Qt 6 so hopefully there's no reason to convert it anyway. Task-number: QTBUG-45045 Task-number: QTBUG-52472 Change-Id: I6ab651e874ed0af2f18735f8bd8eb374a4781bcb Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 8fe35a003b04d31f09d3e83a03ffa2843266f9b5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Windows: fix unchecked Button in GroupBox being rendered as checkedMitch Curtis2022-02-041-0/+1
| | | | | | | | | | Mark the item as dirty when checkedChanged is emitted. Fixes: QTBUG-95033 Change-Id: I506a5f93c62c9a4d322fbbf7f22e04b2a83d089f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit 1c9e6c025c68bc6d0cb939279e8fb1d1d046f56a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Disable flaky testPasi Petäjäjärvi2022-02-041-0/+2
| | | | | | | | | | | | | Fails with no apparent reason 1: FAIL! : qquicklayouts::Tests_GridLayout::test_spacings(NaN) property itemRect 1: Actual (): [18,0,10,10] 1: Expected (): [15,0,10,10] Change-Id: I796ea18d2d29780ae2433d9b9b4d2be8d09d495a Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit 5ed37bbbf1a32d1e32a82371d8602a54ba591b6d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Detach QEventPoint instances during touch compression; test & docsShawn Rutledge2022-02-044-2/+112
| | | | | | | | | | | | | | | | | | | | If we don't detach, they could be modified between the time that the event is stored (delayed) until it's delivered. QQuickDeliveryAgentPrivate::compressTouchEvent() had no explicit test coverage until now; in fact, most tests call QQuickTouchUtils::flush() after every touch event to ensure that it gets delivered immediately. Also add internal docs. Fixes: QTBUG-97185 Fixes: QTBUG-98486 Fixes: QTBUG-98543 Change-Id: I6fd76651ca6fbf15169c44d4d9dbbeb7dc7e3a71 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit d08038ba7015dc681c95654f7fe5e54b60c2e55c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* V4: Do not call dtor of an object we continue to useUlf Hermann2022-02-041-3/+2
| | | | | | | | | | | | | | | | | | | After destroyObject(), the QObjectWrapper is still alive. We might use its heap object again. Furthermore, the Heap::QObjectWrapper dtor does not actually do anything defined. What we want to do here is clear the QObject pointer because we've just gotten rid of the QObject. There is a method for that: Heap::QObjectWrapper::destroy(). Finally, the internalClass must never ever be nullptr. Assert on that rather than checking it. Task-number: QTBUG-100431 Change-Id: I794a295c182b2ed4ba80673f58d6143c861b7391 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 6c197319f34b8098d034f1543eb5feb9d7be54c3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QQmlAdaptorModel: Do not use reparenting for lifetime managemmentFabian Kosmale2022-02-035-10/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In QQmlAdaptorModel, we were using QQmlStrongJSQObjectReference to ensure that a passed in model lives long enough. However, QQmlAdaptorModel uses reparenting to keep objects alive. This is not safe, as we can use QML singletons as models. Reparenting singletons messes with the engine's lifetime handling once their new parent gets deleted: The object will be marked as queuedForDeletion by QQmlData::markAsDeleted; consequently wasDeleted returns true for the object, and any ScopedObject or ObjectWrapper will return nullptr when we try to retrieve their underlying QObject. The actual object probaly does not get deleted, as it is not placed in the QML heap. Consequently the gc will ignore it. This leads to a crash when the singleton is accessed in a different place: We see that the object is non-null, create a ScopedObject for it, and then try to later access the ScopedObject's underlying object (assuming that it must be non-null, because we already checked for the actual object being non-null). However, due to the reasons outlined above, we actually receive a null pointer, and thus encounter a crash. To avoid he issue, we change the lifetime management strategy: Instead of using the parent to keep the object alive, we now use a QV4::PersistentValue. Fixes: QTBUG-100260 Change-Id: I266e6ef94c4f079de3da2742d6fb8d61df5a64ce Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 6901eacff40a7d8781e20fb5bcfd28d7526b589b)
* qmltc: Rely on QQmlJSResourceFileMapperAndrei Golubev2022-02-034-19/+66
| | | | | | | | | | | | | | | | | Similarly to qmllint, we should use QQmlJSResourceFileMapper in qmltc. This should in theory allow us to avoid implicit import dir vs qmldir path issues (where the former comes from source dir while the latter comes from build dir) At present, it does not seem to be the case, however. But this is to be addressed separately Task-number: QTBUG-100103 Change-Id: Ie85799cb0a4b8b1620964000bc5939e9d046678e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 8a72c684464a48595337b01ada5605f612f7971e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Restructure QML module of qmltc testsAndrei Golubev2022-02-0312-198/+183
| | | | | | | | | | | | | | | | | | | | | | | | Use a more canonical qmlcppcodegen-like structure, showcasing a better QML module As this change makes a single QML module instead of two QML modules (for the _diskcache and _nodiskcache scenarios), there are pros and cons Pros: + Prepares us for proper introduction of QQmlJSResourceFileMapper + Theorically allows tests to avoid (additional) weird imports Cons: - Denies the ability to test generated types under default QT_NAMESPACE (in addition to user-provided namespace). This is fine as we don't need this feature until we are able to compile QQC2 and modules alike Task-number: QTBUG-99198 Task-number: QTBUG-100103 Change-Id: I13a594a1859719bc0af3370029e6be7b1744656b Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 6380f10185c0ec6b444cc9140480dc11f87bc67d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* V4 Date: Support another nonstandard date format QDateTime has droppedUlf Hermann2022-02-033-0/+15
| | | | | | | | | | | | Amends commit 43eaa77e8ed03153335c0002dcc8b660c39a0beb. Fixes: QTBUG-100377 Change-Id: I01028bd991b8a64bd9dcad31ce90536d83dad0a1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit 41a5c7b223d958bd40240aee81bb8fb96540735d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Modify m_compareRegister bitfieldTang Haixiang2022-02-031-1/+1
| | | | | | | | | | | | It's from https://trac.webkit.org/changeset/246151/webkit/trunk/ Source/JavaScriptCore/assembler/ARM64Assembler.h Fixes: QTBUG-100221 Fixes: QTBUG-100279 Change-Id: I7a5ec6d97bf52f8cc7bcfb70f184565fc4b78624 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit aacf799ca7aab57133855ed4c1c639c6e8dffe63) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Skip tests that call qmlcachegen when cross-compiledPasi Petäjäjärvi2022-02-032-0/+53
| | | | | | | | | | qmlcachegen is not meant to be available on the target. Fixes: QTBUG-100366 Change-Id: I5cbaa62e85d9a5dd6467840eb4e3ba5e3b63857c Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io> (cherry picked from commit d245985f0b7aa698be2bd9c196fd7b9299aa5693) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Decrease number of objects created in tst_QJSEngine::newQObjectRacePasi Petäjäjärvi2022-02-021-1/+5
| | | | | | | | | | | | | | | | This test is so slow on QNX that it times out: QFATAL : tst_QJSEngine::newQObjectRace() Test function timed out QObject: Cannot create children for a parent that is in a different thread. (Parent is QGuiApplication(0x169b0a6b90), parent's thread is QThread(0x37eb7070f0), current thread is QThread(0x37eb734150) FAIL! : tst_QJSEngine::newQObjectRace() Received a fatal error. Task-number: QTBUG-99168 Change-Id: I623bff212b8334af60198e52bc283cc97187c3a7 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 7fcc9c7f5848ac8c8264341dca7a0b5a3f0dec94)
* JavaScript: Make "this" available in blocks inside arrow functionsUlf Hermann2022-02-022-5/+32
| | | | | | | | Fixes: QTBUG-98039 Change-Id: I51ff36994fa0f3f3568c8114cb6841f677f64bc4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit eeec9f03e9cf57e8cde311897f7e3e62a217da15) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Improve testing of resizing in the rendercontrol autotestLaszlo Agocs2022-02-021-24/+47
| | | | | | | | | | | Drop the unnecessary calls to create and setRenderTarget. At the same time, start testing that resizing really works as expected. Change-Id: I8d60219767fded8069a79abaf5ce85c1cd678974 Reviewed-by: Christian Strømme <christian.stromme@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io> (cherry picked from commit 991ca56147a8465ea677fe5f430e20439dd94f12) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Include upper case .js and .mjs files in qmldirUlf Hermann2022-02-028-8/+21
| | | | | | | | | | | You can use them as singletons. Fixes: QTBUG-100326 Change-Id: I8e07600657bd43ba8376279ffe39cfa5d3213c38 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit bf38043b6107cb10bca4be78ecc8bbc20338a61b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: mention ScrollView in ScrollBar's documentationMitch Curtis2022-02-021-1/+2
| | | | | | | | | Fixes: QTBUG-99124 Change-Id: I6152da783668eea121cb294a884f4ed3577cfbef Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit 9052e09a21fd77c44127f9c75dc8aff8ae60184d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Avoid including self in the generated qmltc codeAndrei Golubev2022-02-021-3/+5
| | | | | | | | | | | | | | | | Somehow this works (?) but is meaningless. In the (special) case of QT_QMLTC_FILE_BASENAME it even works by accident due to the test binary having a suitable include: for the NameConflict.qml, which is renamed to ResolvedNameConflict{.h,.cpp} we still have hand-written nameconflict.h Let's ignore this mess for now (it needs to just be deleted eventually) and just provide minimal changes for the stuff to (continue to) work Change-Id: Ic18f17463d0c60d9b02e3d3824d99605a161ae14 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 9a30895128728f9f1720ab7cb53e90e5e823a568) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Blacklist tests because not supported for software renderingPasi Petäjäjärvi2022-02-024-0/+15
| | | | | | | | | | | For QNX tests are run on qemu with offscreen plugin and software rendering. Change-Id: Idda75387bb7b2a4fc9117a442e307a2b741bc5c5 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Andy Nichols <andy.nichols@qt.io> (cherry picked from commit 11dacf93669ac68b212e343b996a076c8b16ef97) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Blacklist tests that failsPasi Petäjäjärvi2022-02-025-0/+5
| | | | | | | | | | | | QNX tests are run on CI in qemu using offscreen qpa plugin and software backend similar like b2qt. See QTBUG-95750 Task-number: QTBUG-95750 Change-Id: I4c6e4a513f8289d50922259e474a41173c29224b Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 8dc54c99fdab33603b68595d9f0e1a6eaccf5dd6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Blacklist flaky qquickpointhandler testPasi Petäjäjärvi2022-02-021-0/+1
| | | | | | | Change-Id: I94d1f1c2b5afe7a20d1554238a223c3c002c8428 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit c97955b39db4ecfa22ec211b1b6b0e7b4422e13f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fall back to a cmake generated compile hash when git failedVolker Hilsheimer2022-02-011-1/+3
| | | | | | | | | | | | | | | Even if we have git, the source tree might not be a git repository, or git might fail for various reasons. So always fall back to the cmake- generated QML compile hash when it's empty after trying the .tag file and git. Amends a1bba5cd3d5f8a88cd79e6f56149ab88d1abe8b8. Change-Id: Ie9f5642bbfc0cead40138d1f92fe3d673f6dc372 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 839dc73831eb8c4a65702c66b8c42015644cc4a5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: suppress QEXPECT_FAIL() on two tests it passesPasi Petäjäjärvi2022-01-311-2/+2
| | | | | | | | | | | As QNX's support for feature timezone uses the TZ backend, V4's Date.timeZoneUpdated() works, as on Linux, so tests for this method now pass. Change-Id: Ie6c318023bdf508d9f2067ca3fa9d77b78292be5 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 9c63dfd249aeeacc5c1573b6cfe4176fb9480f25) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Improve the structure of the output generated by qmltcAndrei Golubev2022-01-314-35/+81
| | | | | | | | | | | | | | | Make an effort to separate user-visible APIs from internal code relevant to qmltc In the process of doing it, make tst_qmltc_examples::helloWorld() test less brittle by using QMap instead of QHash when dumping C++ member functions of the type. QHash does not guarantee that the keys are ordered while QMap does (via operator "<") Change-Id: I1495e1755d3fd77950acb3820ad2b9c5e3cdee33 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 0ad51325c7432c8a8da38580d26721455252e64f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qmltc: Ignore qmltypes dependencies from INTERFACE_LIBRARY and IMPORTEDAndrei Golubev2022-01-311-0/+19
| | | | | | | | | | | INTERFACE_LIBRARY and IMPORTED targets do not have properties we need, so ignore them to avoid accidental errors during CMake run Fixes: QTBUG-100314 Change-Id: I20c04bd4728ae86eddbc4a29f4461c9df597bf2d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 9dc373f1f1e8839232bc37ed1bf0cd6c6300b263) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qmltc: Drop half-correct type name collecting procedureAndrei Golubev2022-01-312-31/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Type resolver can collect (presumably C++) type names which is needed to verify that the QML document we are about to compile is named correctly and does not have name conflicts However, the collection logic gathers everything we can find: C++ names, QML names, names marked with $anonymous$ or under import namespace. At the same time, the way the procedure works involves poking (pretty much) every known QQmlJSScope a.k.a. creates every type (previously some could've been deferred) which usually means that we have a larger than necessary footprint Thus, delete this procedure and simplify the code. We can later revisit the logic and figure the proper way to collect relevant type names. For now this is just overkill though. Note that this change, consequently, should avoid instantiating types imported from implicit import dir, instead of imported from qmldir (there is a difference apparently) Task-number: QTBUG-100103 Change-Id: Iaf65e5f3a9bf53286760af0dc39a1d7036d7c474 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 25b26452018bde9c569e39e1fd776d25a5412d02) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Distinguish property change signals from user-defined signalsAndrei Golubev2022-01-314-0/+40
| | | | | | | | | | | Do not expose this information to qmltypes just yet, though, as this seems irrelevant at the moment Change-Id: Iffd8901ef9899a0fff226e8799bf45c1d688b92b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit b1bb4c8e5f0d4a65f36b2002bcdaf9bfcbed8c77) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use public as default access specifier of QQmlJSMetaMethodAndrei Golubev2022-01-311-2/+1
| | | | | | | | | | | We don't seem to use it anyhow at present, so changing the default is safe. Making it public would also ensure that we have compatible state between constructors Change-Id: Ic10213af8c5a52e7da2fd5de62c40ae333359759 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit bb911a16aa6c3e9eb4ddf5f5c8657367b9017c7b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.3' in qt/qtdeclarativev6.3.0-beta1Qt Submodule Update Bot2022-01-311-5/+5
| | | | | Change-Id: I8123e878ce6ed0d6d6d75cc6371f055e5b727d16 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* QNX: Cannot run qml only testsPasi Petäjäjärvi2022-01-291-1/+1
| | | | | | | | | | | QML only tests expect to run with qmltest tool and since QNX autotests are run on Qemu that does not work. Task-number: QTBUG-100202 Change-Id: I21732c312486d07e0902b9235a7f8cb84eb5e045 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 98d4a44ecfa0c1afe3e58605f56937f20072d281) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QML: Disable host debugging related tests when cross compilingPasi Petäjäjärvi2022-01-291-14/+18
| | | | | | | | | | | Disable tests that are meant to check debugging features using host binaries. No point running those tests on actual targets. Change-Id: If020dfa00410668a305013254617fd50a0a01175 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 584c912dbbdc2b6f746b22e651cc57c1835c8d35) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Disable ecmascriptestsPasi Petäjäjärvi2022-01-291-1/+1
| | | | | | | | | | | | | | | For QNX tests are run on qemu which is slow so the tests will always timeout. As currently timeout is set to env via CMakeLists.txt it does not have effect on QNX as that env variable is not passed over SSH connection. Running tests on QNX qemu takes ~30min: PASS : tst_EcmaScriptTests::cleanupTestCase() Totals: 4 passed, 0 failed, 0 skipped, 0 blacklisted, 1782249ms Change-Id: Ief1ccb05ce21bf3140554272708c95ca5515bc23 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 856df4380a467d0a5554232d213d549fe8a94d0d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QNX: Force logging to stderrPasi Petäjäjärvi2022-01-291-0/+5
| | | | | | | | | | | | | | | | | | Sub-process output is by default going to slog2 in QNX so we need to force output to stderr instead. 1: FAIL! : tst_qqmlapplicationengine::application(delayed quit) 'QString(testStdErr).endsWith(QString(expectedStdErr))' returned FALSE. ( 1: Expected ending: 1: qml: Start: delayedQuit.qml 1: qml: End 1: 1: Actual output: Task-number: QTBUG-76546 Change-Id: I4a7b6c25b079f7dcc479fc2bcbd3b079bd7bc519 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 5bc77e9b9c9ee878e31dbf6b0254b7cdee81d73c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Auto-test-export QQuickIconLabelPrivateMarc Mutz2022-01-291-1/+1
| | | | | | | | | | It's used in tst_qquickiconlabel.cpp, thus breaking ubsan builds unless exported. Change-Id: I44192fafc7cfcc57e6eccaf0d7df37b510e6d290 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 7e3b966bf88c2316516f24b0800d4edcf705d5b9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: Fix a typo in a See Also link from QQuickText::boundingRect()Shawn Rutledge2022-01-281-1/+1
| | | | | | | Change-Id: I2209e43206258e8b3a118e011a9d1eb8e7a61bd5 Reviewed-by: Marc Mutz <marc.mutz@qt.io> (cherry picked from commit fe5493492350c1e46d184e7595c521ed795ea54c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qquickwindowmodule: Properly expose Visibility enumMaximilian Goldstein2022-01-281-2/+3
| | | | | | | | | | | Previously the foreign Visibility enum was not properly exposed leading to it not being represented in qmltypes. Fixes: QTBUG-99311 Change-Id: I20d865328af6fe4d807e611cf69d496b3b574551 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 0caeae246d7a4c04f35e2f4af69f676cdcbe46c2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use up-to date LGPL license headerKai Köhne2022-01-2725-275/+350
| | | | | | | | | | | | Remove usages of outdated LGPL3 header that references LICENSES.LGPLv3 instead of LICENSES.LGPL3. See also 5d4679289bc for a similar commit in the past. Change-Id: Icbe5eea7bb7b9c5d46cdd56fa3b177d2e22a5fa9 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit f3e4ecfbffa19facb12800ae41f261ff3bfdac63) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Document qmltc output formatAndrei Golubev2022-01-276-23/+323
| | | | | | | | | | | | Make understanding qmltc output easier by showing how it works on a trivial example. Add a paragraph on the generated code location as an addition Fixes: QTBUG-100051 Change-Id: I0fa0f2c6c60fef7accbe855159275591d9e8bbc6 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 8ec6b990e13c8b41d0415af83c5890ef7a9ee227)
* qmltc: Rename CMake command's argument FILES -> QML_FILESAndrei Golubev2022-01-275-13/+13
| | | | | | | | | | This way we make it consistent with qt_add_qml_module() Fixes: QTBUG-100214 Change-Id: I9f38a8ba3dec978ccdf4ea937ff662ae2449e582 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 97123dbe6755a787e93797f717f8ebf193352b85) Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* qmltc: Do not search for qmltypes in non-TARGET libsUlf Hermann2022-01-271-0/+4
| | | | | | | | | | If we haven't built the library ourselves, we can't find its qmltypes this way. Change-Id: I2dba9cfa7a3574df5a34a6cfbd5d34aae9515171 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> (cherry picked from commit 0d799cc0ddf851c64c15441f4774784e3179d1f2) Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Enhance tst_qmltc::componentTypes() by verifying that ids are correctAndrei Golubev2022-01-271-0/+9
| | | | | | | | | We can in fact check that the ids match to correct objects Change-Id: I46ed1a3d0a9ef429670fdc0438a5d717971c459c Reviewed-by: Fawzi Mohamed <fawzi.mohamed@qt.io> (cherry picked from commit feaed5f7aa6c82d9132e71037007b7c91ea57713) Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add revision to QQuickItem::ensurePolished()Shawn Rutledge2022-01-271-1/+1
| | | | | | | | | It's new in 6.3. Amends 18794487a5bf303a60bda7047550048f7d38a86a Change-Id: I903b3e04091d7bce3217b90c23b823575bd9097b Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 453df21f4c29ea5f507deb31089c0ad255897f24) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>