aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* qmllint: Support opening the same grouped scope multiple timesUlf Hermann2021-11-294-1/+18
| | | | | | | | | | | | | | Previously, we would only record the first source location for the scope, which produced errors and crashes on bindings to any further locations. We cannot properly test this on 6.2 because qmllint doesn't use the type propagator, yet. Fixes: QTBUG-96147 Change-Id: I02e6a551f1eafb31ac7c49d3250d74e5a3842971 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> (cherry picked from commit 6605839deb36862d9a480df51bd4243369356042)
* Update dependencies on '6.2' in qt/qtdeclarativeQt Submodule Update Bot2021-11-291-4/+4
| | | | | Change-Id: I9a40ef51add3ae96dbd689bf1120765d00698671 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on '6.2' in qt/qtdeclarativeQt Submodule Update Bot2021-11-281-4/+4
| | | | | Change-Id: Idfb194791c04f08e2d6c79600b359ff8dd93adcd Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Image: make default sourceSize respect DPR for scalable imagesMitch Curtis2021-11-284-24/+41
| | | | | | | | | | | | | When loading SVGs where no sourceSize is set, we need to take the DPR into account so that the image isn't upscaled when the DPR is greater than 1. Fixes: QTBUG-58416 Task-number: QTBUG-81018 Change-Id: I4356407f63477594c1a057555bf0fb6dabdab415 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> (cherry picked from commit b6f085a275c76912862463657c2a91e35bd8936b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix build with latest qtbaseKai Köhne2021-11-282-0/+2
| | | | | | | | | | | | Make sure to include the private parts of qnativeinterface.h, that got moved to qnativeinterface_p.h in commit b99adf7a810 (qtbase). Change-Id: I92a295cfa0421b914aba504ab37f6d1bf826e1b6 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 398279e3644fc041512c97f275ca25928793ac44) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update dependencies on '6.2' in qt/qtdeclarativeQt Submodule Update Bot2021-11-281-4/+4
| | | | | Change-Id: I5cf495a243a39a5aea15c10479744542c1aacb31 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Revert "Fix ListView.isCurrentItem when used with DelegateModel"Mitch Curtis2021-11-273-38/+0
| | | | | | | | | | | | | This reverts commit d9f9d773e92940786f159897623618f3bf6bcf0f. It causes a heap-use-after-free in tst_swipeview.qml. Task-number: QTBUG-97423 Change-Id: I42e9831ae1399a010df28c39496a7778121f5e35 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io> (cherry picked from commit 5d656b31eb371c9e0bb97c558f9193b08471f1d7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* SpinBox: use control instead of parent in indicatorsMitch Curtis2021-11-276-20/+45
| | | | | | | | | | | This avoids errors when users give an id to a customized indicator. Fixes: QTBUG-97782 Change-Id: I3af8139abf992152f27826dd34d499608c6558b9 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit 3bb8ef28a73a1469c1bbc4384d134deb466a4030) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* tst_qqmlxmlhttprequest: Skip locale dependent testsFabian Kosmale2021-11-261-0/+8
| | | | | | | | | | | | | | ...in case the locales is not en-us. Ideally we would make the test not dependent on the system locale, but the best way to achieve is not clear, and skipping tests that have no chance of succeeding is the next best thing we can do. Fixes: QTBUG-59223 Change-Id: I1d7dfca267b01b701e369043d028d61f2f687fcd Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 04f635b808bcb3c64d7f4255774497b566d3c46a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qqmltypecompiler: Be conservative in enum optimizationFabian Kosmale2021-11-263-0/+11
| | | | | | | | | | | | | | | | | | | QQmlEnumTypeResolver constains logic to find enumerations in bindings and turn those bindings into simple integer bindings. However, that logic got confused when we had a complex expression (as in, not only an identifier but any compound expression). Instead of trying to create a mini-expression parser, we opt to be more conservative in the analysis and reject anything that does not look like one or more identifiers separated by dots. The use case of optimizing simple arithmetic operations involving enums in bindings is left to qmlsc. Fixes: QTBUG-98311 Change-Id: I6f8c3fa2a2712dabdea035e2447d52c415ebfc3f Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit e743b6e5e93392584b0eb10215102952e6a78730) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Fix link to LocalStorage in QQmlEngine::offlineStoragePath docsFabian Kosmale2021-11-261-1/+2
| | | | | | | | | Fixes: QTBUG-95633 Change-Id: I6ef35a2fdb459f520debfc817884267ed1546c13 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit 024796a5be4a025c9eb1ea309f7307b1dff5c50d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QQmlLoggingCategory: Avoid unnecessary warnings from settersIvan Tkachenko2021-11-266-35/+56
| | | | | | | | | | | | | | | | Assigning same value should be a no-op, especially because such assignments may happen without explicit user/developer intent. For example, it can be triggered with QQmlEngine::retranslate() call on 5.15 and early 6.x branches. Since the recent optimizations to retranslate() which now only forces to re-evaluate what's really dependent on qsTr, it became harder, but still possible to pull it off. Fixes: QTBUG-97717 Change-Id: I60ca8e36ed98a15ea5f3c15290865cec27084fbc Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 7136df0f8ed2b691f5291712fdeaf401072b32fd) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QQmlComponent: Skip the logging loop completely if category is not enabledIvan Tkachenko2021-11-261-2/+3
| | | | | | | | | | This is meant as an optimization. Change-Id: Ied55c6177669165b82b871ff89703b69336e81b6 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit a78656aa02b1be36dbe09cddac2e8c21c4d7a126) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add missing qproperty includeFabian Kosmale2021-11-261-0/+1
| | | | | | | | | It is no longer transitively included. Change-Id: I483b7d60675f674fa8fe0a318e5486d4ac644526 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> (cherry picked from commit 1e9a296d22d39e3ede601dbcd9e8068617f8f32f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Fix self-import and build dir import paths of QML modulesCraig Scott2021-11-251-3/+11
| | | | | | | | | | | | | | | For an executable with a QML module, the self-import path is actually its own output directory, not CMAKE_CURRENT_BINARY_DIR. But in order to find other QML modules it imports, it still needs CMAKE_CURRENT_BINARY_DIR in the import path if those other QML modules are not collected under a common place (which is assumed to be QT_QML_OUTPUT_DIRECTORY, if set). Change-Id: I60d21b3fc6b6b0ca3d643ae5c6e37a592c1db96e Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 8694cb8dc1937a60042b493ba33c16a883e391cc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* tst_qmllint: Fix requiredProperty.qml testMaximilian Goldstein2021-11-241-5/+7
| | | | | | | | | | | The clean example for testing required properties was using the root component which we do not check for required property errors, use inline components instead. Change-Id: I945ed5c15334b7d88161dddd27b6962593184f9e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 2a04222cfc236ca50fdde38e68d329c5df4a2bc8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix toplevel Qt build (for real this time)Fabian Kosmale2021-11-241-5/+5
| | | | | | | | | | | reused_dir_targets takes a list of targets, not directories, so provide that one. Amends 953c1cf394613fd5977aa4068f45d9d4b6d39662 Fixes: QTBUG-98468 Change-Id: I44e811ff738c5a51845c4829e1e6928e5f2f06f1 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit 00c352c4d4b61f8c7a6243768bc5375c3dca3e76) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Scenegraph examples: Use suffix-less RHI constantsFriedemann Kleint2021-11-243-3/+3
| | | | | | | | | Complements 23dbe3d6e0d3338812ad9f614028a6fdc5a54090. Change-Id: Ic1bda49a888b0580ac483d650b879a9ae843129b Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> (cherry picked from commit 0b2311a62b25cbc34fd41bf0c9aef7e8327eb923) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Unset the QQmlAnimationTimer pointer from unregistered jobsVolker Hilsheimer2021-11-243-2/+50
| | | | | | | | | | | | | | | | | | | | | | Amends 4b125a5bfdd935d260118406c343535e76023200, which reset the pointer in registered jobs when the timer was destroyed. However, if a job is unregistered explicitly before the timer is destroyed, then the job's m_timer pointer might still be a dangling pointer, resulting in a crash when the job is reactivated later. So clear the job's pointer to QQmlAnimationTimer whenever it is unregistered from the timer. Since a running job can then have a nullptr timer, only assert in the job's destructor if the timer is not nullptr. Introduce a test case that reliably crashes without the fix. The test is added to the QQuickAnimation test as it uses a Qt Quick UI. Fixes: QTBUG-98248 Change-Id: Ief991900c50aefd480d9c79e83324968102ca29c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 9c732286ed72afe8cc2d2062e6cedbe5f6a06447) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: Fix QQuickItem point/rect mapping methods signaturesIvan Tkachenko2021-11-231-10/+10
| | | | | | | Change-Id: I103de6db35fe34d7d9a334f421f75d6388a01fc6 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 4b3d2e77824cfee5e4c31ce58e90c7bf83c8e235) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix toplevel Qt buildFabian Kosmale2021-11-221-0/+5
| | | | | | | | | | | | | All targets using the "shared" approach need special handling in toplevel builds to ensure that AUTOMOC works. Amends aa4897e017c027c935cd349450bf787393ce5552. Fixes: QTBUG-98468 Change-Id: Ic0a6ee0ab43190e359ad7cfb7e7634d393ff0b03 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io> (cherry picked from commit 953c1cf394613fd5977aa4068f45d9d4b6d39662) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* tst_qqmllanguage: Make hangOnWarning independent of disk cacheUlf Hermann2021-11-221-0/+16
| | | | | | | | | | | We force parsing of the file by attaching a dummy debugger to the engine. Fixes: QTBUG-98469 Change-Id: Ibacebf78493148f0d75b3c5a858889723230d92c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit ea3ef53488e3fd2bc305642366baa8ecf16cea31) Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Add \since 6.2 to TableView.selectionModel property docShawn Rutledge2021-11-201-0/+1
| | | | | | | | Fixes: QTBUG-98440 Change-Id: Ic8c6ccc81a2bf74a2739b3634b5816f2da356b8b Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit a8cf502882f95e652bd0a2daa50a2f276bd97cb8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* If ListView visibleItems count is zero update footerTony Leinonen2021-11-193-0/+108
| | | | | | | | | | | | After removing the last visible item from ListView the footer jumped back to its original position. Call updateFooter if the are no items in the visibleItems list to set the footer to its correct position. Task-number: QTBUG-86044 Change-Id: Id226304030ecc8db26d413670a908f50feef5ba0 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 028c70da42e026b71cc809fc3e13298f4c2366bb) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* De-flakify tst_QQuickListView2::dragDelegateWithMouseArea()Jan Arve Sæther2021-11-191-0/+1
| | | | | | | | | | | | On opensuse 15.3, the window will sometimes move (probably due to window decorations being added by the window manager). Showing the window frameless seems to fix it. Fixes: QTBUG-97914 Change-Id: I310c8f514b6ea11934da2de1673ca49463bfa746 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 67e3908e42419c99bc1280fa98db79b625abfad0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QQuickMacFocusFrame: Don't map focus item's coordinates to focus frame'sDoris Verria2021-11-192-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When the target item of the focus frame changes to the application's focus object, the parent of the focus frame is set to the parent of the focus item and its target item is set to the new focus object. If the new focus object is an item which doesn't draw the QQuickMacFocusFrame, (e.g: the item's background delegate draws the focus frame), the focus frame's parent is set to null, but its target item doesn't change. This caused problems because the focus frame's coordinates kept being evaluated based on the old focus item's ones, but the mapping of the coordinates was done against the focus frame's new coordinate system (that changed with the parent change). This caused the focus frame to be in the wrong position which was noticeable once the application's focus was on the target item again. To fix, it's enough to set the targetItem property of the focus frame to null when the target item is not a valid one (i.e: doesn't draw the macOS focus frame). Move that logic into the moveToItem function. While we're at it, we can also get rid of the mapping of the coordinates and set the focus frame coordinates directly dependent on the target item's ones. Since the focus frame and its target item share the same parent, there's no need to convert the coordinates. This avoids some expensive calculations whenever the target item moves. Fixes: QTBUG-97927 Change-Id: Ibe5b11300b98bdc2ffb42a4ba5432ea9c658c583 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io> (cherry picked from commit 0a0e498b0583c1f1ac7ece5c572faa35204ae953) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix tst_StyleImports::platformSelectors() for AndroidAssam Boudjelthia2021-11-191-1/+1
| | | | | | | | | | Handle the case of Android since Q_OS_LINUX is defined also on Android. Task-number: QTBUG-88846 Change-Id: Iec5c286ead43141906f18349629ddffbc644072c Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit 3bcdefc004ae2c1c46d2f4d07d819b1169347ef1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qmllint: Fix typo in app descriptionMaximilian Goldstein2021-11-191-1/+1
| | | | | | | | | | Disabling uses the keyword "disable" not "disabled". Fixed in this change. Change-Id: I544a543043627121a11ca3ab56ad3d967707efb6 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit edeaf70d9a6a1f159f27e9d4a791809e1a87d786) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Blacklist tst_qquickimage::mirror() on macOS 12Ulf Hermann2021-11-181-0/+3
| | | | | | | | | | Task-number: QTBUG-98402 Change-Id: Ic0fec0d066238346093641145483092f3289a3af Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit 06d99e4032ecd0611513d500d7c099ad9cb5d872) Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Instantiator: Do not load items when inactiveFabian Kosmale2021-11-183-1/+61
| | | | | | | | | | | | | | | Instantiator would react to model changes even when inactive, causing instances to be errorneously created. We simply skip doing anything when inactive, as setting the Instantiator to active later will trigger a full regenaration anyway. Fixes: QTBUG-86453 Fixes: QTBUG-88331 Change-Id: Ia5fd916bbd591d5fc72c550424b1a53a142c2fa8 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit a1c1ad11ce6f4a415cefc583cfab41336ecf71e3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add includes to fix build after changes in qtbaseVolker Hilsheimer2021-11-172-0/+2
| | | | | | | | | | Do not rely on QLoggingCategory being implicitly declared through other headers. Amends d17a49a5c593947a3a2f7aaa39137375e508a8fd. Change-Id: I59d1368f6fd8dbfc90fe873c7bef9cc79491425b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit d44dc4a25bf89931e6fd09433a9ad9ab4ae9dd7d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qmllint: Fix some settings not being checked properlyMaximilian Goldstein2021-11-167-23/+68
| | | | | | | | | | | Previously some settings were only checked before any settings file could be loaded, thus resulting in misapplied settings. Now every settings option will be applied on a per-file basis as it should be. Change-Id: Ib7c8a8d7dbec2d4379f634488e3899e1746c0c51 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 171219a5ccd10d92127b246579e5a324614f1880)
* Material: distinguish highlighted buttons from highlighted & checkedMitch Curtis2021-11-163-4/+19
| | | | | | | | | | | Make the button lighter in the light and dark themes. Fixes: QTBUG-91886 Change-Id: I0c21eef31e82cf23b729c16ae469e2938d6c490c Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> (cherry picked from commit 96ee0baf1b081818a5d15fe46f6828fc33b683d4) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Explicitly include qloggingcategory.hKai Köhne2021-11-161-0/+1
| | | | | | | | | Do not rely on QLoggingCategory being implicitly declared through other headers. Change-Id: Ib6cda43f281d31a7127dd591be2540fb00a0a699 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> (cherry picked from commit d17a49a5c593947a3a2f7aaa39137375e508a8fd)
* qmllint: Fix crash when builtins are not foundMaximilian Goldstein2021-11-166-15/+56
| | | | | | | | | | Previously builtins not being found would lead to an endless loop that crashes qmllint. Now missing builtins are handled gracefully, aborting linting without crashing as this an unrecoverable error. Change-Id: Ia585b1e0e5c972dad0eeabf8df06edf71eaea0c7 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 363c23357501bdbacf9407ef46e7808261486aa8)
* Rendercontrol example: use new cmake apiOliver Eftevaag2021-11-164-58/+28
| | | | | | | | | | | | Updating the CMakeLists.txt files in the d3d11 and opengl version of the example to use the new qt_add_qml_module() function instead of the old qt_add_resources() Task-number: QTBUG-98130 Change-Id: Ida43e4b0c875951a85d754b3a96f88366b580e24 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 88dfbe0deaa780f1cb5793d644341367d02e3073) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add BC files for 6.2.0Milla Pohjanheimo2021-11-154-0/+48111
| | | | | | | | | | Binary compatibility files added. Change-Id: I97387b14c93e4da7b671709cdf4db5b0bfd05536 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 437a91609996870d7693053faded9938c351ea1a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Model examples: use new cmake apiOliver Eftevaag2021-11-1213-79/+43
| | | | | | | | | | | | | | | | | | The models directory contains 3 subdirectories with an example project in each. This patch updates the CMakeLists.txt files to use qt_add_qml_module() instead of the old qt_add_resources(). In order to achieve intercompatibility with both cmake and qmake, I had to do some slight modifications to both the .qrc files and the url path used to set the source to the QQuickView. Task-number: QTBUG-98130 Change-Id: I13d1c01a0eda181823f394bc2a4259ce98abd4f8 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit a155b3bc3ee161fbb7ff1760781577700b0aafce) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Do not reset loops when creating designer objectsAntti Määttä2021-11-121-1/+0
| | | | | | | | | | | | | Fix looping in designer particle editor when the particle system is in sub-component. When it is not in sub-component, the editor resets the loops, but not when it is in sub-component. Fixes: QDS-5481 Change-Id: I81b392d95c2928244f91f00e0a93853356e1c287 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io> (cherry picked from commit e0db57f9d07f47e1fefdd0c6f507e32308e4041c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qmake/vcxproj: Fix qmltypes files being displayed at project rootJoerg Bornemann2021-11-121-8/+12
| | | | | | | | | | | | | | | | | | | In qmake-generated Visual Studio projects the generated .qmltypes files were displayed at the project root. The reason is QTBUG-91033: multiple extra compilers use that file as input. Turn off the fake rule qmltyperegistrar_qmltypes for Visual Studio projects. This rule is supposed to make $$QMLTYPES_FILENAME known to the build system in Makefile generators. This is only necessary if one needs to create extra compilers that work on $$QMLTYPES_FILENAME, which - judging from Qt's own examples - seems to be an exceptional case. Task-number: QTBUG-91033 Task-number: QTBUG-94806 Change-Id: Id8d45264d0922bcc3d201ce216663c9ca7d44fa2 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 21237e40565c1331aab531ae2c262fdc2c96fc53) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Keyinteraction example: use qt_add_qml_module() in CMakeLists.txtOliver Eftevaag2021-11-1211-76/+86
| | | | | | | | | | We want to use the new cmake api instead of qt6_add_resources() The file structure has also been flattened a bit. Task-number: QTBUG-98130 Change-Id: I1651d25e2902bf6932b78c2224ee4ffe454b658d Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 750e7d946ca8c059151e91c57da243bdc787ea6e)
* MouseArea example: use qt_add_qml_module() and update a signal handlerOliver Eftevaag2021-11-123-30/+15
| | | | | | | | | | | | | | | Thing patch updates the CMakeLists.txt file to use qt_add_qml_module() instead of qt6_add_resource(). Additionally, it changes a signal handler, which was previously a plain statement, into a js function, which is the preferred way to write signal handlers. Task-number: QTBUG-98130 Change-Id: I1b08dcd3eae370d78587aa3d37d9456437b54b42 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 28bfd773cac84d228df9e6bdcc9bed84d79935c5) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Particle examples: use new cmake apiOliver Eftevaag2021-11-1299-1196/+427
| | | | | | | | | | | | | | | | | | | | | | | | | The particles directory contains 5 different examples and a shared directory with some images files. This patch changes the examples to use qt_add_qml_module() in the CMakeLists.txt project files, and changes the .qrc files to directory reference the files needed by the individual projects, which removes the need for images.qrc. (The .pro files still reference the shared.qrc file) The "content" directories located in the different example projects, have been removed, and the containing files have simply been moved to the parent directories instead. Some unused files in the itemparticle example have also been deleted. This example looks very outdated and should ideally be improved, or perhaps simply removed, but I decided to leave it for now. Task-number: QTBUG-98130 Change-Id: If05986b4347814715bca50b8d3f6a5cddbf9ced4 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit aa4897e017c027c935cd349450bf787393ce5552)
* Embeddedinwidgets example: use qt_add_qml_module()Oliver Eftevaag2021-11-111-33/+11
| | | | | | | | | | We want to use the new cmake api, rather than qt6_add_resources() Task-number: QTBUG-98130 Change-Id: I567aec77b963adce03fb683c244d758880891ce5 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit fb264129529dc39cf94bc3e69ef14cc08d26df78) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add regression test for QQmlEngine::retranslate() crashMitch Curtis2021-11-112-0/+165
| | | | | | | | | Original-patch-by: Mitch Curtis <mitch.curtis@qt.io> Task-number: QTBUG-84196 Change-Id: Idb5e3cf89c7866a7493645087180843dacf24210 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 56f00a8429bf6932e9bd92f21eda71aee9c64690) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use resize instead of shrink when clearing upload poolsAntti Määttä2021-11-111-2/+2
| | | | | | | | | | | | | | | | Fix creator qml puppet crash at startup due to nullptr exception. The puppet clears the cached resources, which calls shrink(0) to the vertex and index upload pools. The shrink only sets the capacity to 0 and deallocates the buffer, but leaves the size intact. The next time the upload pools are used they are not reallocated, because only the size gets checked. Use resize instead of shrink since it calls the shrink and also sets the size to zero. Fixes: QTBUG-98150 Change-Id: Id852e71d4caa0f6c5ca560142024ca9d143df7f8 Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io> (cherry picked from commit 3bf5e8b671e0f7be7f3fa5004aedbb2f9838c56a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* painteditem: better error message when running cmake on textballoonOliver Eftevaag2021-11-111-0/+4
| | | | | | | | | | | | | | | | | | | | | | Building the TextBalloon in isolation doesn't make any sense. Its purpose is to implement a delegate, for the painteditem example to use, and should therefore only be built as part of the painteditem project. To build the example, cmake should be invoked with examples/quick/customitems/painteditem/CMakeLists.txt as its source path. The CMakeLists.txt in examples/quick/customitems/painteditem/TextBalloon should only be used from another CMakeLists.txt file via the add_subdirectory() command. If invoked directly it makes sense to print an error message and stop processing. Task-number: QTBUG-96806 Change-Id: I1ebd2157790afbf7307498a4fb64049794ae6c5b Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit fe59c788a65579bbeeb550fcad96cf26443df77a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix CMakeLists.txts of chattutorialMitch Curtis2021-11-11110-528/+521
| | | | | | | | | | | | | | | | | | - Run pro2cmake.py on each .pro and did some manual adjustments. - Rename directories to simplify resource paths, URIs, etc. - Rename executables to ensure they're distinguishable from other targets in Creator's locator. - Duplicate images into each example due to issues with resources. - Now that we use qt_add_qml_module, the qtquickcontrols2.conf file will no longer be at the resource root, so specify it separately with qt6_add_resources. - Update qmake files. - Fix documentation. Task-number: QTBUG-98130 Change-Id: I210ef2cbcd45dd7f4df881332174bff1b18c5be7 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 5e8e12b342657b9dabffd86e7f2b0d1ae194bd54)
* Handle function as default arguments in toplevel functionsFabian Kosmale2021-11-114-0/+32
| | | | | | | | | | | | | | | | | | | | | | Top level functions, that is, those directly defined in a QML component as opposed to those defined inside another function or class, are not visited directly by the ScanFunction visitor. Instead, they are manually considered in generateJSCodeForFunctionsAndBindings, and the visitor is then run on their body. This worked mostly fine, with one notable exception: In case there is a function expression used as the default value of a function parameter, that function would have never been visited. This would lead to subsequent asserts/crashes in the codegen, as the function was not properly set up. We fix this by manually visiting the function's formals in addition to the body. Fixes: QTBUG-98032 Change-Id: I5cb4caae39ab45f01a0dfa1555099d7d4b796a19 Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit be194d965d530e57ed5851781c6805e691c6ae98) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Make QML builtins files available in resource file systemAndrei Golubev2021-11-102-9/+32
| | | | | | | | | | | | | | Thus ensuring that the builtins are always present, even if the Qt build/installation is weird (Kind of) amends 363c23357501bdbacf9407ef46e7808261486aa8 Task-number: QTBUG-97986 Change-Id: I7cf41781ec37bf531d1b45ae95296fcb3546673d Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 7f018794beebf360bf375e065d2547c71150fdf6) Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>