aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports
Commit message (Collapse)AuthorAgeFilesLines
* CMake: Fix qml module version to use the repo project versionAlexandru Croitor2021-04-1617-17/+17
| | | | | | | | | | | | Use PROJECT_VERSION instead of CMAKE_PROJECT_VERSION, so that the repo project version is used in a top-level build, rather than the version of the qt5 project. Task-number: QTBUG-92861 Change-Id: I5a7a09baf81353558e512800746ac24e8e8b9a47 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit cd7bd71d08f1c21648756d0a9fd501ce37a8cc0c) Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* QuickLayouts: fix crash when layout width depends on parent widthIvan Solovev2021-01-151-2/+2
| | | | | | | | | | | | | | | | | | Some tricky cases of setting layout width based on parent layout width were leading to infinite recursive loop of layout size calculation (see the attached example in the related Jira task). Initially the QQuickGridLayoutBase::rearrange() method already had a recurse check, but it seemed to happen too late, so that the recursive calls kept happening from the ensureLayoutItemsUpdated() calls. This commit moves the recursion check up, so that it's actually executed before we have a chance to get to the next level of recursion. Fixes: QTBUG-87253 Change-Id: I473ee219e7b5b13547e33ebbd3a6d884de2c7d45 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io> (cherry picked from commit 4f8041b01445fd4eec0beb133719645d00d0b2ac) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CMake: Regenerate projects using pro2cmake one last timeAlexandru Croitor2020-12-101-3/+1
| | | | | | | | | | And fix up some incorrect qmake project files Change-Id: Ia6d27ac68195635021fe7c4a5f06386a60f3f323 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> (cherry picked from commit c1c4a874e31ba108a3600fbbb0aee7fc0bf34601) Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* Doc: Remove version numbers for import statementJerome Pasion2020-11-267-13/+13
| | | | | | | | | | | | -recommend using the import statement without versions for Qt 6.0 -update use of \qml snippet without \QtMinorVersion -some language change to be neutral about versions Task-number: QTBUG-87155 Change-Id: I3ac44f93aab3086c1a49de79ecc677beb4ef9180 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> (cherry picked from commit 72746ef0ad69d589de91f43aa2043d6e47745d68) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Doc: Remove version numbers for import statementJerome Pasion2020-11-2410-20/+20
| | | | | | | | | | | -recommend using the import statement without versions for Qt 6.0 -update use of \qml Task-number: QTBUG-87155 Change-Id: I555d582a13006c5abb6dc1e0266d2987ba79c6d8 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 370fe537badd2b98c2da7f8918a15411d5aa67ad) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QmlCompiler: Fix resolution of method and property typesUlf Hermann2020-11-181-1/+6
| | | | | | | | | | | | | | | | We need to resolve the types for QML elements in two passes because only after finishing the parsing we have the QML-declared methods and properties available. We already need the base type before, though. Also, there can be multiple methods of the same name. We need API to access them. It also turns out that the internal name of the "var" type has to be QVariant in order to match reality. "var" properties and unnamed arguments to JS functions are implemented as QVariant. Change-Id: I541f11e96db72d832f4e4443d3a5d31079a56575 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add past major version 1 to QtQuick.tooling and 6 to its componentsUlf Hermann2020-11-162-1/+11
| | | | | | Change-Id: I09e29b85949eac270c6cee711408b8a09dea79a8 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
* Don't copy or assign QEvent instances in testsVolker Hilsheimer2020-11-161-11/+20
| | | | | | | | | | | | | | | Copying/assigning polymorphic types is a code smell, use separate instances instead in the tests. Those should perhaps be rewritten to use a data driven testing approach, there's a lot of code repetition. In the test API implementation, first evaluate the parameters for the event, then construct the event once with the correct values. Change-Id: I2572772698cb0204f5ff950741b9fe3805fae15d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* tooling: List the actual QML files in the qmake projectUlf Hermann2020-11-131-3/+8
| | | | | | Fixes: QTBUG-88471 Change-Id: Ifc023fdc82b728931ff88c0c634ad71e2b2995a2 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add a module describing the qmltypes formatUlf Hermann2020-11-1213-1/+428
| | | | | | | | | | It's turtles all the way down. And now we can verify builtins.qmltypes using qmllint. Change-Id: I10c98ff8837c04838c3fd9803ef4ea0fd5d7bd0e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* CMake: Change Quick.Window into a pure Qml moduleAlexandru Croitor2020-11-123-0/+53
| | | | | | | | | | | This fixes apps using Qt.Window with static Qt builds when deployed to a machine that doesn't have Qt installed. This will need a counterpart fix in qmake land. Change-Id: Ife11f9d1f1826e1188ef3dc3933af2f243860b6f Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Change internal name of "var" type to QJSValueUlf Hermann2020-11-111-16/+17
| | | | | | | This is in line with what it's called in other qmltypes files. Change-Id: Ic2266cf5253c488cf93509548b4f2f26f2aae661 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use "QString" as internal name for string type in builtinsUlf Hermann2020-11-111-60/+60
| | | | | | | This fits the terminology in other qmltypes files. Change-Id: I4cce9c1f388eba79790d07dfee44a04600fda667 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* testlib: Don't misuse the Qt object for storing test resultsUlf Hermann2020-11-111-17/+15
| | | | | | | | | I'm pretty sure ".pragma library" works as intended by now. That comment was from 2011. Task-number: QTBUG-88372 Change-Id: I1f5baed221f7eebe62bb4b12940725d565b67793 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QQmlListProperty: Use qsizetype rather than int for sizesUlf Hermann2020-11-094-13/+14
| | | | | | | | | | [ChangeLog][QtQml] The QQmlListProperty callback functions use qsizetype now as type for the size of a list. This is in line with the containers that you might use to back the list. Fixes: QTBUG-88269 Change-Id: Ia38403cb32f241e6c70e1a580dbeff1d6d694331 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Doc: Fix documentation warnings for QML Models and Test modulesTopi Reinio2020-11-052-2/+2
| | | | | | Fixes: QTBUG-88156 Change-Id: Ie9723f1bb612f4603d15455a0320cc01b27ff181 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Formalize declaration of varargs in builtins.qmltypesUlf Hermann2020-10-281-43/+19
| | | | | | | varargs are a special non-exported type. Change-Id: I2cd00d197ee5b4976e683cfe91dc0561a7186541 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Run builtins.qmltypes through qmlformatUlf Hermann2020-10-281-261/+1042
| | | | | Change-Id: I3ee4904cd3d492f71edee5f3b2bc9507df9810d4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Mark basic types as value types in builtins.qmltypesUlf Hermann2020-10-281-0/+5
| | | | | Change-Id: Ibb8c40a3d8af405926769b776807c9e2d47f061e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* builtins.qmltypes: Change real's internal name to "double"Ulf Hermann2020-10-281-79/+84
| | | | | | | | | It's called "double" everywhere else. We also have a "float" type in some places. Add that one. "double" still has an export called "real" as that is what you write in QML files. Change-Id: I4107e28c3441b9f829aca9abcbcbb8c5e3f8d327 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove duplicate property assignment from builtins.qmltypesUlf Hermann2020-10-271-1/+1
| | | | | | Change-Id: I0b96cc346ebf6580399f5379882f674073a89c21 Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* qml: Move more types into builtins.qmltypesMaximilian Goldstein2020-10-261-0/+36
| | | | | Change-Id: Id2795f16af99870f32266f81228890a9d12c86a7 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix qdoc warning: document parameters correctlyVolker Hilsheimer2020-10-221-3/+3
| | | | | Change-Id: I04a2376908369df9cef5d1751797db39034668d3 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Compile with Clang11Lars Knoll2020-10-211-2/+2
| | | | | Change-Id: I9f3a4a6b6c7a2fbfca0a572209f398a23c26b37b Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add undefined to builtins.qmltypesUlf Hermann2020-10-161-2/+7
| | | | | Change-Id: Ie7c8a28fdc417c43a9f24061171b342447b15272 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix typoes in builtins.qmltypesUlf Hermann2020-10-161-16/+16
| | | | | | | It's isReadonly, not isReadOnly. Change-Id: Ia4c372468447bd4f6c0ad21ba36a228052912220 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* CMake: Allow installation of qmltypes filesUlf Hermann2020-10-089-0/+9
| | | | | | | | This is what qmake does on install_qmltypes and we do want to install the qmltypes files of our own modules. Change-Id: Iad430aab87f21331abf332ca5c92f9d7edc47bb0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add missing typeinfo to labsanimation/qmldirUlf Hermann2020-10-071-0/+1
| | | | | Change-Id: I265710165249e7c6e892d00fc3594dbe1ac71816 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QmlCompiler: Use the declared typeinfos rather than the defaultUlf Hermann2020-10-074-0/+4
| | | | | | | | | | ... and produce a warning when encountering the default. This shows us that the qmake build omits some typeinfo entries from common modules. Add those. Change-Id: I1c7e87e8a54ef24a6076090e6051eb1c03c09b2a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* CMake: Regenerate projects to use new qt_internal_ APIAlexandru Croitor2020-10-0616-19/+19
| | | | | | | | Modify special case locations to use the new API as well. Task-number: QTBUG-86815 Change-Id: I3b964e3baf0cc7040830156dac30358ea1152801 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* testlib: Remove the deprecated MouseDoubleClick() methodShawn Rutledge2020-10-051-35/+0
| | | | | | | | | | | | After qtbase/871d19a5b96fa5a5be4ac50e3121e0704ff08374 MouseButtonDblClick is no longer delivered like a press event, but like an update: that is, only grabbers will receive it. So this test function is even less useful for the sorts of tests that are written in QML. Those who want to test pathological event sequences can do it in C++. Task-number: QTBUG-42185 Change-Id: Ib40c7acd0a807b2c701357164c1579a9cd1823a5 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* TestCase.qml: make mouseMove(item) move to the center of the itemShawn Rutledge2020-10-021-3/+10
| | | | | | | | | | | | | | | | | | | | | | Undefined x and y now mean item center, as with the double-click method from 726eaaeeeede086ed341899b8ee0c1570e6bf6f5, and others from b40a2a881291b3eaea4b4834a162091537e6a34e. Some Controls 2 tests are doing this: tst_controls::Basic::ScrollBar::test_hover, tst_controls::Basic::TextArea::test_hover and tst_controls::Basic::TextField::test_hover Also document the buttons argument which was added in 7100a74def3a82bc52c93b800cec973bf312b1b3. [ChangeLog][QtQuickTest][TestCase] The mouseMove() QML test method now interprets missing x and y coordinates as meaning that the mouse should move to the center of the given item. Task-number: QTBUG-87018 Change-Id: Ied1df3521c0cffd703cc1120ba4eb43eb5c5e163 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Avoid various warnings about deprected QMetaType methodsUlf Hermann2020-09-163-7/+8
| | | | | Change-Id: I8f4b2703fdd08ff341904219cec33c321e0511c7 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* new builtins.qmltypesFawzi Mohamed2020-08-271-1614/+826
| | | | | | | | | | | manually mantained qmltypes files with the builtintypes (as defined in ECMA-262) This is a best match effort, unfortunately we cannot (yet?) express all the semantic of ECMAScript, but we try to be close to it. Fixes: QTBUG-83815 Change-Id: I0572114ff9f2d5a0855c62def824551cba8be655 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Follow layoutMirroring in Layout marginsDavid Edmundson2020-08-263-1/+15
| | | | | | | | | | | | | | | If a layout is laid out left to right using the layoutDirection property, we want left Margins on the left, and rightMargin still on the right However, if a layout is mirrored, not only should the layout direction change but also the left margin should now be on the right and vice versa. Task-number: QTBUG-62989 Pick-to: 5.15 Change-Id: Iaae4bc436fd1eb7f1947869563ac325f3d6b79bb Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* Remove qml statemachine plugin from qtdeclarativeKarsten Heimrich2020-08-2318-1866/+0
| | | | | | Task-number: QTBUG-80316 Change-Id: I584b699a1eec88117f343870bd2cd01075da64f7 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
* Quick: Make sure the module initialization runs in static buildsUlf Hermann2020-08-101-0/+2
| | | | | | | | | | | | We need to keep a reference to the module initialization function somewhere in order to prevent the linker from removing it. In order to avoid further littering of the namespace, the QQuick_initializeProviders function is transformed to cover all of the initialization. Task-number: QTBUG-85693 Change-Id: Ie93e5abd1dfb5a425b87c70d8ec6327bb68880cb Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Replace Qt's MidButton with MiddleButtonEdward Welbourne2020-07-221-1/+1
| | | | | | | | | | The latter has been the preferred name since Qt 4.7.0. Added a comment on where the old name is exposed to QML that it's only for backwards compatibility. Pick-to: 5.15 Change-Id: I2c5088d597dd7327cc5899d06afb180d0ec2893e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* CMake: Regenerate projectsAlexandru Croitor2020-07-094-2/+52
| | | | | | | | | We need the qt_add_tool changes to successfully configure qemu builds. The rest of the changes are just to be in sync with the .pro files. Change-Id: I7bcc08ac58f57a5761aedef09761428c55235289 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Make the qtquick and qtqml plugins optionalUlf Hermann2020-07-026-32/+14
| | | | | | | | | We can do the initialization and de-initialization as constructor and destructor functions. Then we don't need to load the plugins. Task-number: QTBUG-84639 Change-Id: I2aeeee7e8d028555e3af91e93518c2c2afd70dbb Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add ; to Q_UNUSED and UNUSED_PARAMLars Schmertmann2020-06-262-2/+2
| | | | | | | | | This is required to remove the ; from the macro with Qt 6. Task-number: QTBUG-82978 Change-Id: Iead53d18fd790fb2d870d80ef2db79666f0d2392 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Use QList instead of QVectorJarek Kobus2020-06-252-2/+2
| | | | | | Task-number: QTBUG-84469 Change-Id: I4c3353c00a566023503fbc178ba8454391dc334c Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Discern between "auto" and versioned imports in qmldirsUlf Hermann2020-06-245-7/+7
| | | | | | | | | | | | | You can now import the latest version, a specific version, or, "auto" which is the same version as the parent module. [ChangeLog][QtQml] You can now procedurally add module imports to modules, using qmlRegisterModuleImport(). However, actual import statements in qmldir files should be preferred wherever possible. Fixes: QTBUG-84899 Change-Id: I3b32dd8b07a19d31b6538b9a6bb436840862f345 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Don't leak QQmlBoundSignalExpressions in signaltransition.cppUlf Hermann2020-06-241-5/+8
| | | | | | | | | We need to adopt them, not addref the newly created object. Fixes: QTBUG-83214 Pick-to: 5.15 Change-Id: Ic8660e65d4b7c7698657f6b2806b5478f7f15ea1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Replace QQmlBoundSignalExpressionPointer with QQmlRefPointerUlf Hermann2020-06-242-3/+3
| | | | | | | They do the same thing. Change-Id: Ia35832e6175728e7480d09caba6d3833718d9e80 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove QQuickPointerDevice in favor of QPointingDeviceShawn Rutledge2020-06-233-8/+9
| | | | | | | | | | | | | | ...and generally deal with changes immediately required after adding QInputDevice and QPointingDevice. Also fixed a few usages of deprecated accessors that weren't taken care of in 212c2bffbb041aee0e3c9a7f0551ef151ed2d3ad. Task-number: QTBUG-46412 Task-number: QTBUG-69433 Task-number: QTBUG-72167 Change-Id: I93a2643162878afa216556f10808fd92e0b20071 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* Port QtDeclarative from QStringRef to QStringViewKarsten Heimrich2020-06-161-5/+5
| | | | | | | | Task-number: QTBUG-84319 Change-Id: I2dcfb8a2db98282c7a1acdad1e6f4f949f26df15 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Remove QtQuick.Window pluginUlf Hermann2020-06-157-258/+2
| | | | | | | | | | | | | | | | | We move all the types into QtQuick itself and retain QtQuick.Window only as alias to QtQuick. This requires support for qmldirs that consist of only an import statement. [ChangeLog][QtQuick][Important Behavior Changes] The contents of the QtQuick.Window QML module have been moved into the QtQuick module. QtQuick.Window is merely and alias for QtQuick now. An explicit import of QtQuick will override this alias. Therefore, if you import QtQuick with a different version than QtQuick.Window, you will get the QtQuick.Window types of the version given in the QtQuick import now. Task-number: QTBUG-84639 Change-Id: Ia82afab0ac2faba70cfdaf53dc8dfe4261e1113f Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Allow QML plugins to be optionalUlf Hermann2020-06-094-4/+4
| | | | | | | | | | | If a plugin does nothing but load the library that provides the types, we can skip the plugin loading by linking the library directly. State that in the qmldir file, and evaluate it when loading the module. Task-number: QTBUG-84639 Change-Id: I2097237866a50f66c55e4653ad119fe10e18a893 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove winrtOliver Wolff2020-06-041-1/+1
| | | | | | | | | Task-number: QTBUG-84434 Change-Id: If8f57f00726868a3540c877d07fca761618e4f08 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>