aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* builtins: Don't export Math, JSON, StringUlf Hermann2021-01-251-8/+0
| | | | | | | | | Those are properties of the JS global object. You cannot use them as normal types. Change-Id: I1f80e1be8f598cb102109fa2f685cd2b55ad6950 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Add env.vars. to toggle pipeline cache load/saveLaszlo Agocs2021-01-255-8/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QRhi has APIs (but private ones) that allow retrieving and restoring the contents of the "pipeline cache". (which may map directly to VkPipelineCache, or may be a simulated, OpenGL program binary based solution) In many cases it is convenient if the saving of the cache blob to a file, and then, during subsequent runs of the application, the loading of cache contents, can be enabled via environment variables: QSG_RHI_PIPELINE_CACHE_SAVE=filename maps to setting the EnablePipelineCacheDataSave flag on the QRhi, and writing the collected data to file upon application exit. (more correctly, when the QRhi is about to be destroyed by the render loop) QSG_RHI_PIPELINE_CACHE_LOAD=filename maps to attempting to read the contents of the specified file, and, if successful, passing it to QRhi right after initialization. When supported and the data is not corrupt or incomplete, the result is likely improved pipeline creation times (the exact details depend on the driver with Vulkan, while with OpenGL it all maps to glProgramBinary instead of compiling from source) Setting QSG_INFO=1 can be useful to see what is happening when the above 2 env.vars. are set. With OpenGL the simulated "pipeline cache" is orthogonal to the Qt 5 era shader program disk cache: loading from both is supported transparently to the application. When QSG_RHI_PIPELINE_CACHE_SAVE is enabled, the disk cache will not be written to. Task-number: QTBUG-90398 Change-Id: I82d9a81e9dab39d3513a6aa7c6e1ff748a4ec6e5 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-251-2/+2
| | | | | Change-Id: I0919b0ed1af31ef0d5a8df58d9b639d72ea552f9 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* export QAcccessibleQuickItemJan Arve Sæther2021-01-221-1/+2
| | | | | | | | | | | This is needed in order to make controls in qtquickcontrols2 module more accessible. Their accessibility implementation can now inherit from QAcccessibleQuickItem Task-number: QTBUG-75042 Pick-to: 5.15 6.0 Change-Id: I30deba018825937a4ebd757e5250efca87519822 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Qt.labs.qmlmodels: Make plugin optionalMaximilian Goldstein2021-01-2212-28/+120
| | | | | | | | | This moves the qmlmodels types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Task-number: QTBUG-90487 Change-Id: Ib76d1f0b592cc52f6396864fb4be3bb41c4df27b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QAnimationGroupJob: Don't call virtual functions from dtorUlf Hermann2021-01-222-23/+42
| | | | | | | | | | | | The subclasses are already dead at that point. We don't need to notify them anymore. Rather, refactor the code so that we can clean up QAnimationGroupJob itself without virtual calls. Task-number: QTBUG-90401 Pick-to: 5.12 5.15 6.0 Change-Id: I6917bf299ceb1383b9d29687e5bf53ae36803ecf Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Export QML and Quick value typesUlf Hermann2021-01-222-17/+17
| | | | | | | They need to be accessible from C++. Change-Id: I60f2213bdbe6b8b64856e13f1e0cc798f8a51086 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QJSEngine: Add a function to throw a pre-generated error objectUlf Hermann2021-01-223-2/+19
| | | | | | | | | | | | | | | It makes little sense that you can construct an error object but not throw it. The test was definitely meant to actually throw the error object, not return it. [ChangeLog][QtQml] QJSEngine has gained an additional overload to the throwError() method, with the effect that calling throwError() with a character literal as argument is now ambiguous. You should explicitly construct a QString instead. Change-Id: I90c6c9edf10509daa142a86581d6a3f7ff45af2c Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Qt.labs.wavefrontmesh: Make plugin optionalMaximilian Goldstein2021-01-228-9/+900
| | | | | | | | | This moves the wavefrontmesh types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Task-number: QTBUG-90487 Change-Id: I9ab9dfc62ef9c205ce4649df33a6c1e2ac0ca639 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-221-2/+2
| | | | | Change-Id: I07f003b5c04a8f96b2484e331b672049cec69c08 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* fix no translation buildTim Jenssen2021-01-211-0/+2
| | | | | Change-Id: I5f4334e8b55511c33eab52262239d5d2da2329ba Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* qmllint: Fix auto-importing of qmltypes from same directoryUlf Hermann2021-01-214-1/+30
| | | | | | | Fixes: QTBUG-90513 Pick-to: 6.0 Change-Id: Ic39e72d6df20be30c61123a7f8091d70dbc2d924 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Avoid memory leaks in QSequentialAnimationGroupJob testUlf Hermann2021-01-211-4/+9
| | | | | Change-Id: Ib221f83ff80ed02f29b1dbe2767ccf63abf16738 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Qt.labs.animation: Make plugin optionalMaximilian Goldstein2021-01-219-9/+109
| | | | | | | | | This moves the animation types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Task-number: QTBUG-90487 Change-Id: I19bd864253941931706933f7e517bb31938e9cc2 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Silence warnings about deprecated QString::QString(const char*)Friedemann Kleint2021-01-213-9/+14
| | | | | | | | | | | | Fix warnings like: src/qmllocalstorage/qqmllocalstorage.cpp:81:62: warning: QString::QString(const char*) is deprecated: Use fromUtf8, QStringLiteral, or QLatin1String [-Wdeprecated-declarations] src/src/labs/settings/qqmlsettings.cpp:335:87: warning: QString::QString(const char*) is deprecated: Use fromUtf8, QStringLiteral, or QLatin1String [-Wdeprecated-declarations] src/labs/settings/qqmlsettings.cpp:346:50: warning: QString::QString(const char*) is deprecated: Use fromUtf8, QStringLiteral, or n1String [-Wdeprecated-declarations] src/labs/settings/qqmlsettings.cpp:361:50: warning: QString::QString(const char*) is deprecated: Use fromUtf8, QStringLiteral, or n1String [-Wdeprecated-declarations] src/quicklayouts/qquicklayout.cpp:1241:61: warning: QString::QString(const char*) is deprecated: Use fromUtf8, QStringLiteral, or QLatin1String [-Wdeprecated-declarations] Change-Id: I87d7e28842a4f7f75b02c1e78eb3df400adcab94 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Qt.labs.folderlistmodel: Make plugin optionalMaximilian Goldstein2021-01-2111-10/+109
| | | | | | | | | This moves the folderlistmodel types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Task-number: QTBUG-90487 Change-Id: Iee84a4804a241aa1dee5f896a02ccc9f0ecc0d8d Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Expose the list of preferred instance extensions to rendercontrol usersLaszlo Agocs2021-01-214-5/+40
| | | | | | | | | As all QRhi stuff is private, it needs to have a public counterpart in Qt Quick in order to fully support the case of Vulkan-based QQuickRenderControl usage. Change-Id: Iaf9a7aa56022acd31af6ebf16de6b83a04966ff4 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* Query QRhi's desired Vulkan instance extensions instead of hardcodingLaszlo Agocs2021-01-211-2/+1
| | | | | Change-Id: I9859e1b2f786f1e578f3536bb3299c38a3a9a8b6 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* qmllint: Remove exceptions for most unknown builtinsUlf Hermann2021-01-216-86/+98
| | | | | | | | | | | | All those types are properly defined in the qmltypes files now. We just need to search the enumerations the same way as methods and properties in order to find everything. Also, deduplicate the code that resolves properties, methods, and enums by using a common template for iterating the scopes. Change-Id: I0bf1423974d0ec8f602ecd0342522b3e981a8586 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use new QObjectPrivate connection mechanism in dynamic connectionsAndrei Golubev2021-01-214-2/+123
| | | | | | | | | | | Old API assumes sender == receiver, which results in wrong handling of connections when receiver is deleted: connection is not removed or notified elsehow as it's not really tied to a valid receiver Task-number: QTBUG-86368 Pick-to: 5.15 6.0 Change-Id: I0f3115f1b0f26cf353752ba2b8fd88e0f3bdd388 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Doc: Fix CI warnings qtdeclarativeNico Vertriest2021-01-211-1/+1
| | | | | | Task-number: QTBUG-90439 Change-Id: I24664b27c3185c595b1ffd994cdf51b944f494ee Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-211-2/+2
| | | | | Change-Id: I8a044533c9ae8637c6bc348d06f38ca105a5c9d0 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Doc: Change section about writing a qmltypes fileUlf Hermann2021-01-202-103/+9
| | | | | | | | | | | You should not write qmltypes files manually. We only document their existence and that you should add them to manually written qmldir files now. Change-Id: I434398656179806c3e57724324aba38738384e1d Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* QQmlJSScope: Fix typoUlf Hermann2021-01-202-3/+3
| | | | | | Change-Id: Idb29a7483b813ed00849c13ef1324c7e931400de Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Qt.labs.settings: Make plugin optionalMaximilian Goldstein2021-01-209-8/+104
| | | | | | | | | This moves the settings types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Task-number: QTBUG-90487 Change-Id: I986615b08ea8c1a7312b9d9c6ae0b13c03fb5497 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Ensure we cancel touchMouseSynthesis upon receiving touchCancelRichard Moe Gustavsen2021-01-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | As it stood, we wouldn't cancel touchMouseSynthesis after receiving a touch cancel event. The result would be that the first touch event sent to QQuickWindow thereafter would have touchMouseId set to value different from -1. This again would fool QQuickWindow into believing that the event belonged to a touch event it has synthesized before, and it would as such take a different/wrong path for delivery. This caused text selection to fail on iOS, since a press-and-hold on a line edit from QPA would cancel the touch event and show a magnifier glass. When the user later touched inside the line edit again to move the cursor, this new touch event would not be delivered to the text edit. Pick-to: 6.0 Fixes: QTBUG-90485 Change-Id: Iad640ae57317ea86ee68ca053654b0b30ade003a Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Restore libfuzzer pro filesFabian Kosmale2021-01-202-0/+22
| | | | | | | | This is a partial revert of 78ab4b8d8b75fed240cded1a3f182048e56a8823, as the fuzzing infrastructure has not been migrated to CMake yet. Change-Id: Iebd873ec3760c5394bc248ed853b57e168d0f05c Reviewed-by: Robert Loehning <robert.loehning@qt.io>
* QtQuick.LocalStorage: Make plugin optionalMaximilian Goldstein2021-01-208-17/+118
| | | | | | | | | This moves the LocalStorage types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Task-number: QTBUG-90487 Change-Id: I57ae8dc45a9ef3d5221520f656a2475bca2eb453 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QmlCompiler: Add equality operators and hash functionsUlf Hermann2021-01-201-0/+81
| | | | | | | We want to be able to use these types in hashes. Change-Id: Iea60bb8dd1ce893a37c4856d153f0f5c77d29fcd Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* qmllint: Support extended typesUlf Hermann2021-01-205-6/+83
| | | | | | | Fixes: QTBUG-90448 Change-Id: I5fb6b3d9223ae95ca7e039c5b9139ed086052c29 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QML_SINGLETON: Handle local create() functions with foreign typesMaximilian Goldstein2021-01-205-21/+82
| | | | | | | | Previously only the foreign type was searched for a create method. Now the wrapping type can also contain it. Change-Id: I05fb9e0c0a54c14530eb9adcae5a44df5c208be3 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Blacklist tst_qquickfolderlistmodel::nameFilters on macOsFabian Kosmale2021-01-201-0/+1
| | | | | | Task-number: QTBUG-90468 Change-Id: I9e6ec2a218ba09ef9819eddcd00d090a79cbc6ca Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* tst_qquickloader: Make message matching less stringentFabian Kosmale2021-01-201-1/+1
| | | | | | | | For some reason, we do not get the correct line number on macOs. Task-number: QTBUG-90448 Change-Id: I8dc45011c68e2cbe0d30f4a54f48a74a5a6b0271 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
* qmllint: Skip failing testsFabian Kosmale2021-01-202-0/+4
| | | | | | | | And do not choke completely on extended. Task-number: QTBUG-90448 Change-Id: I4ac5742ec70f5ba1ed1403be444d9cc7229830c2 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QQmlComponentPrivate::setInitialProperties: Do not silently swallow exceptionsFabian Kosmale2021-01-184-3/+25
| | | | | | | Instead, log them with qmlWarning. Change-Id: Icde7397085841a84aca8a81c716d552c4cd4485a Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* qmltyperegistrar: Remove QML.ManualRegistrationUlf Hermann2021-01-183-18/+1
| | | | | | | | | | This was needed because we couldn't automatically generate the types for the Qt object/namespace. Now we can. We should not offer this possibility to users as we need to see all the types at compile time. Such an escape hatch will only give us problems in the future. Change-Id: Ib86fddd0352cf1877a4123cad273c99c4252d8ac Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add support for extended types to qmltyperegistrarUlf Hermann2021-01-1810-131/+221
| | | | | | | | | | | | | | | We generate the extensions as separate types. This also covers the case of value types being extended by "themselves". We can properly express this now, so we don't need the hackery of generating the local members of a type with QML_FOREIGN into the foreign type anymore. This also fixes interfaces from local types being written for foreign types. Fixes: QTBUG-89501 Change-Id: Ic76acd7eef09a92c1e36bd7a649c7a2deb24597b Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QML engine: Fix writing function to property through aliasFabian Kosmale2021-01-183-1/+41
| | | | | | | | | | | | | | We special case writing functions to properties, only allowing assigning them to var properties and QJSValue properties. This would however break when aliases are involved. This commit fixes the issue by resolving the alias, and then checking and writing to the resolved property. Fixes: QTBUG-90373 Pick-to: 5.15 6.0 Change-Id: Ia09ebe92feeaf8359c99ff9aeadc676b9fcfaa07 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Update hovered on disabled QQuickItemsAllan Sandfeld Jensen2021-01-182-2/+4
| | | | | | | | | | | | | | | | Changes handling of hovered so that the property is still updated on disabled items, so that other items can bind to it. This is in particular useful for tooltips. [ChangeLog][Behavior Changes] QQuickItem::hovered will now update even when the item is disabled. Fixes: QTBUG-30801 Pick-to: 6.0 Change-Id: Id17298f657d7631b0e5019138ba33a7d5f863475 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* qmltyperegistrar: Silence further static analysis warningsUlf Hermann2021-01-182-2/+2
| | | | | Change-Id: I37a8b76bada2bfe19d0377725eceecbf8322a10e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* qmltyperegistrar: Always use the local type name for "auto" elementsUlf Hermann2021-01-181-1/+2
| | | | | | | | | The local type name is assumed to be under the user's control. Previously the choice would depend on the order of classinfo objects in the metatype. Change-Id: I3199b757aaa9f04821723df1c6331ab447771ee0 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-181-2/+2
| | | | | Change-Id: I8131dd5ea1f123c40279f9bb0f6366459ae31e9a Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Build fixes for GCC 11Ville Voutilainen2021-01-181-2/+2
| | | | | | Task-number: QTBUG-89977 Change-Id: I975a859d5252e2721475f86ced6c8dab06ae8c9c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Quick.Layouts: Make plugin optionalFabian Kosmale2021-01-1816-22/+120
| | | | | | | | | This moves the Layouts types into a new library and is meant to make them availabe to the QML compiler at some point in the future. Change-Id: I9b2b31a78b0e9ca8b6c0db1fc9272d9941c61814 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-181-2/+2
| | | | | Change-Id: Ieb14072d215231223a07e5702f431c4d4e02a555 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-181-2/+2
| | | | | Change-Id: Ibf447d0099831c3ac58db16f5fc75c96e2bb82be Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* Update dependencies on 'dev' in qt/qtdeclarativeQt Submodule Update Bot2021-01-151-2/+2
| | | | | Change-Id: I0cd92fa002bf21817384bc0e8b167f71d98f3ba8 Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
* qmltyperegistrar: Silence further static analysis warningsUlf Hermann2021-01-152-12/+12
| | | | | Change-Id: Ib6e45a06ca5cf606281171fd1dc890f67026b79a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* qmltyperegistrar: Silence some static analysis warningsUlf Hermann2021-01-151-12/+12
| | | | | Change-Id: I1a4bdbb49e6700f2e218ebd349b823350bb09148 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove the qmake project filesFabian Kosmale2021-01-15463-7640/+0
| | | | | | | | | Remove all qmake project files, except for examples which are used to test that qmake continues to work. Change-Id: Ic4abb72dc2dcd75df7a797c56056b6b3c5fe62ac Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>