summaryrefslogtreecommitdiff
path: root/tests/benchmarks
Commit message (Collapse)AuthorAgeFilesLines
* Make the colorresolving benchmark also a benchmark for cmakeVolker Hilsheimer2023-04-271-15/+10
| | | | | | | | | | Using qt_internal_add_test for a benchmark gives it a _check target, not a _benchmark target. Use qt_internal_add_benchmark instead, link against QuickTest, and set the QUICK_TEST_SOURCE_DIR variable explicitly. Pick-to: 6.5 Change-Id: Id72f2623b7edaa538ef3ff2cb3f505506652ee5a Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* QQuickMouseArea: do not overload pressed-signalSami Shalayel2023-01-241-15/+15
| | | | | | | | | | | Renames the pressed() getter of the pressed property in QQuickMouseArea to isPressed() to avoid overloading the pressed()-signal. Signals should not be overloaded. Also, it makes code generation in qmltc more complicated. Task-number: QTBUG-110029 Change-Id: I2373f4fe97b1e955b815825003bc746f2eaf43be Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Retire the qt_parse_all_argumentsAmir Masoud Abdol2023-01-2015-20/+20
| | | | | | Task-number: QTBUG-99238 Change-Id: Ia11c9cbd7c06347319ab3674ec0cd8da0214747e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove "2" from Qt Quick Controls directoriesMitch Curtis2022-12-0158-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Qt Quick Controls 2 was named that way because it was a follow-up to Qt Quick Controls 1.x. Now that Qt Quick Controls 1 is no longer supported, we don't need to have "2" in the name. Work on this was already started for the documentation in 1abdfe5d5a052f2298b7bf657513dfa7e0c66a56. By doing this renaming a few weeks before feature freeze, it won't affect the release but still results in as little time possible spent manually fixing conflicts in cherry-picks from non-LTS releases as a result of the renaming. This patch does the following: - Renames directories. - Adapts CMakeLists.txt and other files to account for the new paths. A follow-up patch will handle documentation. It does not touch library names or other user-facing stuff, as that will have to be done in Qt 7. Task-number: QTBUG-95413 Change-Id: I170d8db19033ee71e495ff0c5c1a517a41ed7634 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* tst_qqmlchangeset: fix target name typo and de-duplicate testsMitch Curtis2022-11-011-2/+2
| | | | | | | | | There was a typo in the auto test's target name, but fixing it also requires renaming the benchmark which has the same name. Pick-to: 6.2 6.4 Change-Id: I8e7b6de472ed84df0917584592f28d7015618331 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* tests/benchmarks/quickcontrols2: allow opening projects in CreatorMitch Curtis2022-10-312-0/+12
| | | | | | | | | | Otherwise it's only possible to build these projects on the command line with qt-cmake-standalone-test. Task-number: QTBUG-93020 Pick-to: 6.2 6.3 6.4 Change-Id: I84e5bd2b6b3bb7cb8deac22ec417af793ae8c1d6 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Port from container::count() and length() to size() - V5Marc Mutz2022-10-132-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8, but extended to handle typedefs and accesses through pointers, too: const std::string o = "object"; auto hasTypeIgnoringPointer = [](auto type) { return anyOf(hasType(type), hasType(pointsTo(type))); }; auto derivedFromAnyOfClasses = [&](ArrayRef<StringRef> classes) { auto exprOfDeclaredType = [&](auto decl) { return expr(hasTypeIgnoringPointer(hasUnqualifiedDesugaredType(recordType(hasDeclaration(decl))))).bind(o); }; return exprOfDeclaredType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes)))); }; auto renameMethod = [&] (ArrayRef<StringRef> classes, StringRef from, StringRef to) { return makeRule(cxxMemberCallExpr(on(derivedFromAnyOfClasses(classes)), callee(cxxMethodDecl(hasName(from), parameterCountIs(0)))), changeTo(cat(access(o, cat(to)), "()")), cat("use '", to, "' instead of '", from, "'")); }; renameMethod(<classes>, "count", "size"); renameMethod(<classes>, "length", "size"); except that on() was replaced with a matcher that doesn't ignoreParens(). a.k.a qt-port-to-std-compatible-api V5 with config Scope: 'Container'. Change-Id: I58e1b41b91c34d2e860dbb5847b3752edbfc6fc9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Port from qAsConst() to std::as_const()Marc Mutz2022-10-073-4/+4
| | | | | | | | | | | | | | We've been requiring C++17 since Qt 6.0, and our qAsConst use finally starts to bother us (QTBUG-99313), so time to port away from it now. Since qAsConst has exactly the same semantics as std::as_const (down to rvalue treatment, constexpr'ness and noexcept'ness), there's really nothing more to it than a global search-and-replace. Task-number: QTBUG-99313 Change-Id: I601bf70f020f511019ed28731ba53b14b765dbf0 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Port from container::count() and length() to size()Marc Mutz2022-10-071-4/+4
| | | | | | | | | | | | | | | | | | | | This is a semantic patch using ClangTidyTransformator as in qtbase/df9d882d41b741fef7c5beeddb0abe9d904443d8: auto QtContainerClass = anyOf( expr(hasType(cxxRecordDecl(isSameOrDerivedFrom(hasAnyName(classes))))).bind(o), expr(hasType(namedDecl(hasAnyName(<classes>)))).bind(o)); makeRule(cxxMemberCallExpr(on(QtContainerClass), callee(cxxMethodDecl(hasAnyName({"count", "length"), parameterCountIs(0))))), changeTo(cat(access(o, cat("size"), "()"))), cat("use 'size()' instead of 'count()/length()'")) a.k.a qt-port-to-std-compatible-api with config Scope: 'Container', with the extended set of container classes recognized. Change-Id: Idb1f75dfe2323bd1d9e8b4d58d54f1b4b80c7ed7 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Fix warning from ignoring return of [nodiscard] methodVolker Hilsheimer2022-09-181-1/+1
| | | | | | | | | | | | | Compiler warns: ignoring return value of function declared with 'nodiscard' attribute [-Wunused-result] Pick-to: 6.4 Change-Id: If10d41fad7dc77b36eecc8725de178b0908f32de Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Change the license of all CMakeLists.txt and *.cmake files to BSDLucie Gérard2022-09-0730-30/+30
| | | | | | | Task-number: QTBUG-105718 Change-Id: Id89ed14990804a5024183e75382cc539d4293da1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Material: add TreeViewDelegate.qmlRichard Moe Gustavsen2022-09-022-2/+2
| | | | | | | | | | | | | | | Add a version of TreeViewDelegate.qml to the Material style, that looks more at home for that style (rather than using the one in the Basic style). This version is using the arrow-indicator from the Material style as expand/collapse indicator, and makes the height of each row match the height of a normal Material button. Pick-to: 6.4 Change-Id: I084532ca6e527593e5711d66aa53f240f0356d99 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fusion: add TreeViewDelegateRichard Moe Gustavsen2022-08-312-2/+3
| | | | | | | | | | | | | | | Add a version of TreeViewDelegate.qml to the Fusion style, that looks more at home for that style (rather than using the one in the Basic style). This version is using the arrow-indicator from the Fusion style as expand/collapse indicator, and makes the height of each row match the height of a normal Fusion button. Pick-to: 6.4 Change-Id: I153bb5776e23476cf8c383fb6f76e63981e28639 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Tests: do not use QT_DISABLE_DEPRECATED_BEFOREIvan Solovev2022-08-263-5/+0
| | | | | | | | | | For several reasons: * It was renamed to QT_DISABLE_DEPRECATED_UP_TO * Its value will be propagated from the general Qt build Task-number: QTBUG-104858 Change-Id: I90c92dc05b884f6408467c573181c00f8e00e6b3 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* CMake: Don't use PUBLIC_LIBRARIES for tests and test helpersAlexandru Croitor2022-07-2824-24/+24
| | | | | Change-Id: I1cd769f85d5f82c43639d6787d98e536619249e6 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
* Add license headers to cmake filesLucie Gérard2022-07-0830-0/+90
| | | | | | | | | | | | CMakeLists.txt and .cmake files of significant size (more than 2 lines according to our check in tst_license.pl) now have the copyright and license header. Existing copyright statements remain intact Task-number: QTBUG-88621 Change-Id: I72c89a98c42bbc9234d8495e9e503bec81d11037 Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use SPDX license identifiersLucie Gérard2022-06-11201-5493/+402
| | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I63563bbeb6f60f89d2c99660400dca7fab78a294 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* Fix tst_objectcount on AndroidAndreas Buhr2022-05-041-0/+7
| | | | | | | | | | tst_objectcount did not have its test data properly included. This patch fixes it. Pick-to: 6.2 6.3 Task-number: QTBUG-101865 Change-Id: I25e4e01eeb87fbddcd55d9e85411c9cb2d5d5c61 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Cleanup CMakeLists.txt filesAndreas Buhr2022-05-031-2/+0
| | | | | | | | | A lot of CMakeLists.txt files defined QT_QMLTEST_DATADIR twice, leading to a warning. This patch fixes these. Pick-to: 6.2 6.3 Change-Id: I8b835fcddd3334f0ecac45cb72bd5763b3a5704d Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Replace uses of deprecated _qs with _s/QStringLiteralSona Kurazyan2022-04-291-1/+3
| | | | | | Task-number: QTBUG-101408 Change-Id: Ic925751b73f52d8fa5add5cacc52d6dd6ea2dc27 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix warnings in tests after QQmlListReference changeVolker Hilsheimer2022-03-211-1/+1
| | | | | | | | The engine parameter is no longer used. Pick-to: 6.3 Change-Id: Ifc630eb4803a015d41df50210bd86947f6a5a472 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix warning from deprecated QMouseEvent constructorVolker Hilsheimer2022-03-211-6/+12
| | | | | | | | Calculate and pass the global pos explicitly. Pick-to: 6.3 Change-Id: I6d16a21e95454a65a80d5366c6c46b3cacf33dd3 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* controls: add TreeViewDelegateRichard Moe Gustavsen2021-12-092-2/+4
| | | | | | | | | | | | | | | | | This patch adds TreeViewDelegate to Controls. TreeViewDelegate is a ready-made delegate that can be assigned to TreeView. It takes care of drawing the tree using the style, and can be used directly without the need for customization. It implements all the required properties set by TreeView, and offers in addition a small API that lets the developer change the indicator and the label. [ChangeLog][Controls] New delegate added: TreeViewDelegate Change-Id: I50fbc059afbc2b896d23d9d59717c8571e94bae6 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix license of tests from LGPL3 to GPL-EXCEPTKai Köhne2021-11-294-68/+36
| | | | | | | | | | | | Autotests in Qt are usually GPL3, or BSD. No point in using the LGPL here. This also gets rid of last references to LICENSE.LGPLv3 in this repository, so we can delete both LICENSE.LGPLv3 and LICENSE.GPLv3, which it references. Change-Id: Idbdefe0c68cc8047ede72b439a4d7ff40dfd71b6 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Add a benchmark of Date.getTimeZoneOffset()Edward Welbourne2021-11-231-0/+16
| | | | | | | | | Test at many moments from spring 1967 (before the epoch) to summer 2046 (after 32-bit time_t's sign-wrap). Change-Id: I3932cc1553a868b8815fda9a8dfc7644e4485704 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Clean up tst_javascriptEdward Welbourne2021-11-231-40/+15
| | | | | | | | | | | | | | | | Inline the trivial constructor. Get rid of the pointless destructor. Use QDirIterator instead of QDir, to save collecting a bunch of strings, only to iterate them, when we could simply iterate them. Use QDirIterator::filePath() instead of adding fragments ourselves. Use u"*.qml"_qs instead of constructing QString from ASCII. Use QString::chopped(4) rather than left(size() - 4). Use QScopedPointer to ensure tidy-up of allocated object. Don't use 0 as a null pointer value. Waste less vertical space. Change-Id: I44f62f4e41f63de860f47114b2f47dddbf9746bc Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Add calendar typesMitch Curtis2021-11-032-6/+9
| | | | | | | | | | | Formerly Qt.labs.calendar, then QtQuick.Calendar in the marketplace, this now returns as part of the controls module. [ChangeLog] Added types from Qt.labs.calendar/QtQuick.Calendar. Change-Id: I8a06c08e6520be1ba8f33c73ba174785724e99c2 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Replace 0 pointer constants with nullptrAllan Sandfeld Jensen2021-10-186-12/+12
| | | | | | | Replaced in most common patterns. Change-Id: Idcaff1f2e915f29922702d3600a2e5f1e2418a7a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Consolidate test helpers into private librariesMitch Curtis2021-09-136-29/+45
| | | | | | | | | | | | | | | | | | | | Previously each test would include and build sources from the shared folder. Now we make those sources a library, build it once, then have each test link to it instead. We also take the opportunity to move some helpers that qtquickcontrols2 had added into the quicktestutils library where it makes sense, and for the helpers that don't make sense to be there, move them into quickcontrolstestutils. We add the libraries to src/ so that they are internal modules built as part of Qt, rather than tests. That way we can use them in a standalone test outside of qtdeclarative. Task-number: QTBUG-95621 Pick-to: 6.2 Change-Id: I0a2ab3976fdbff2e4414df7bdc0808f16453b80a Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use qEnvironmentVariableIntValue() instead of qgetenv().toInt()Shawn Rutledge2021-08-171-1/+1
| | | | | | | | The docs tell us that it's faster. Pick-to: 6.2 Change-Id: Ib828ed9a10bbb617670a61e7525cbbe25704815d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge qtquickcontrols2 into qtdeclarativeMitch Curtis2021-07-2858-0/+1238
|\ | | | | | | | | Task-number: QTBUG-95173 Change-Id: I2cf31e30127e8cc2f10304cabf4ff7f5050633b8
| * Fix test pathsMitch Curtis2021-07-264-12/+12
| | | | | | | | | | | | | | | | | | | | In preparation for merging into qtdeclarative Task-number: QTBUG-95173 Change-Id: I0c91c9af85ca63ca8c7f7184d41f299030e12a0e Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Restructure tests in preparation for merging into qtdeclarativeMitch Curtis2021-07-2258-16/+17
| | | | | | | | | | | | | | Task-number: QTBUG-95173 Change-Id: I541dc26cf2cdd6f2640824f693f7d059445367d9 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| * Update to latest qml CMake APICraig Scott2021-06-054-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The new qml CMake API places a closer relationship between the backing target and the plugin target. Both are typically created together and they share a lot of common details. Instead of creating them in different parts of the source tree, they are now specified together. The src/imports area has effectively been absorbed into the other corresponding subdirectories below src with this change. Task-number: QTBUG-91621 Change-Id: I9bd32e9eb78c198ccc9db04e2829303cac323502 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * Add findViewDelegateItem function to visualtestutils.hMitch Curtis2021-04-222-0/+2
| | | | | | | | | | | | | | | | | | | | This helper function finds an item view delegate instance at a given index, ensuring that the view is polished and positioned at the correct index if necessary. Change-Id: Ib133914df723251835be3812c1d0654c07a99f14 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * CMake: Regenerate projects to use new qt_internal_ APIAlexandru Croitor2020-10-072-6/+6
| | | | | | | | | | | | | | | | Modify special case locations to use the new API as well. Task-number: QTBUG-86815 Change-Id: I4a690095fcd4b1141550de86b6820ae2dd579429 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
| * Rename "Default" style to "Basic"Mitch Curtis2020-09-242-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Styles] The Default style was renamed to Basic to account for the introduction of the platform styles (macOS, Windows), which will be used by default (where possible) when no style is specified. Fixes: QTBUG-85984 Task-number: QTBUG-68814 Task-number: QTBUG-86403 Change-Id: I22b3199c8662e4ee5d55a1be1a51c9856ac62376 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * auto tests: remove all versioning from the test dataRichard Moe Gustavsen2020-09-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The problem is that QtQuick.Controls.macos is only available with revision 6.0. And when importing e.g QtQuick.Controls 2.15, we try to load a style with the same revision. But it simply doesn't exist. So remove all versioning from the tests to also support testing newer styles. Change-Id: I666a93ab03ec4c5dcf2055a363547f8cdac8d25e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Fix CMake buildMitch Curtis2020-08-262-0/+2
| | | | | | | | | | | | Task-number: QTBUG-82922 Change-Id: I75f4a553a6bb260f77bfa791f12fa42e80131e09 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * Use qmlRegisterModuleImport() to register stylesMitch Curtis2020-08-263-21/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch completes the cumulative work done in previous patches. - Uses qmlRegisterModuleImport() to register styles. This has some added requirements: - Each style must now be a QML module -- that is, it must have a qmldir file. - As a result of the above, the module must be available within the QML import path in order to be found. - The various forms of accepted style names have been reduced down to one ("Material", "MyStyle", etc). See below for an explanation of why. - The following API in QQuickStyle is removed: addStylePath(), availableStyles(), path(), stylePathList(). These no longer make sense now that we reuse the existing QML import system. - Adds the tst_qquickstyleselector auto test back as "styleimports". qmlRegisterModuleImport() vs resolvedUrl() Previously we would use QQuickStyleSelector to select individual QML files based on which style was set. We'd do this once when QtQuick.Controls was first imported. With Qt 6, and the requirement that each style be a proper QML module, qmlRegisterModuleImport() was introduced. This allows us to "link" one import with another. For an example of what this looks like in practice, suppose the style was set to "MyStyle", and the fallback to "Material". The "QtQuick.Controls" import will be linked to "MyStyle", "MyStyle" to "QtQuick.Controls.Material", and as a final fallback (for controls like Action which only the Default style implements), "QtQuick.Controls.Material" to "QtQuick.Controls.Default". This is the same behavior as in Qt 5 (see qquickstyleselector.cpp): // 1) requested style (e.g. "MyStyle", included in d->selectors) // 2) fallback style (e.g. "Material", included in d->selectors) // 3) default style (empty selector, not in d->selectors) This is a necessary step to enable compilation of QML to C++. Reducing the set of accepted style names The problem In QtQuickControls2Plugin() we need to call QQuickStylePrivate::init(baseUrl()) in order to detect if the style is a custom style in QQuickStyleSpec::resolve() (by checking if the style path starts with the base URL). In Qt 5, init() is called in QtQuickControls2Plugin::registerTypes(), but in Qt 6 that's too late, because we need to call qmlRegisterModuleImport() in the constructor. qmlRegisterModuleImport() itself requires the style to have already been set in order to create the correct import URI ("QtQuick.Controls.X" for built-in styles, "MyCustomStyle" for custom styles). The solution By reducing the valid forms for style names down to one: ./myapp -style MyStyle we solve the problem of needing baseUrl() to determine if the style is a custom style or not, but needing to call it too early (since we now call qmlRegisterModuleImport() in QtQuickControls2Plugin(), which itself requires the style to have already been set). baseUrl() can't have been set before the constructor is finished. All of the various forms for _setting_ a style are still valid; environment variables, qtquickcontrols2.conf, etc. [ChangeLog][Important Behavior Changes] Custom styles must now have a qmldir that lists the files that the style implements. For example, for a style that only implements Button: --- module MyStyle Button 1.0 Button.qml --- In addition, there is now only one valid, case-sensitive form for style names: "Material", "MyStyle", etc. These changes are done to help enable the compilation of QML code to C++, as well as improve tooling capabilities. [ChangeLog][Important Behavior Changes] The following API was removed: - QQuickStyle::addStylePath() - QQuickStyle::availableStyles() - QQuickStyle::path() - QQuickStyle::stylePathList() - QT_QUICK_CONTROLS_STYLE_PATH This API is no longer necessary and/or able to be provided now that styles are treated as regular QML modules. Task-number: QTBUG-82922 Change-Id: I3b281131903c7c3c1cf0616eb7486a872dccd730 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * Remove all version numbers from QML importsMitch Curtis2020-08-2649-153/+153
| | | | | | | | | | | | | | | | | | As of Qt 6, the latest version will be used by default. This saves us a lot of effort in terms of version bumps. Task-number: QTBUG-82922 Change-Id: I74eba8185ec3ccc75bc293d4b2ea87d59e2d9928 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
| * Register C++ types declarativelyMitch Curtis2020-08-262-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adapt to the new way of registering C++ types. The types need to be seen at compile time so that code can be generated that invokes them. This patch: - Adds QML_* macros where applicable. - Adapts the build system files to the new way of registering modules. - Splits up the QtQuick.Controls[.*].impl files into their own plugins, as we can only register one QML module per .pro file. - Removes C++ type registration calls in every plugin. - Moves private types from src/quickcontrols2/quickcontrols2.pro to src/quickcontrols2/impl/quickcontrols2-impl.pro. Some of these types need to be exposed to QML, but quickcontrols2.pro is already in use to declare the QtQuick.Controls import (and also provides the public C++ QQuickStyle API), and the new QML_IMPORT_NAME/VERSION syntax only allows one module per project. As some of the types that need to be exposed to QML are also referenced by some C++ code (e.g. tests, etc.), we just move all of the private types to the new library. Follow-up patches will register the QML types declaratively. Task-number: QTBUG-82922 Change-Id: Iaf9ee106237d61701d57a8896f3822304c8151a6 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| * Remove Qt Labs CalendarMitch Curtis2020-05-283-17/+0
| | | | | | | | | | | | | | | | | | | | This is getting its own repository as part of the move to the marketplace. Task-number: QTBUG-84172 Pick-to: 5.15 Change-Id: I2f963c298d6ef95e0832f95aa1e1ea809f4867a2 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| * CMake: Regenerate projectsAlexandru Croitor2020-03-172-18/+12
| | | | | | | | | | | | Change-Id: Ifd6b2289de6465a010f5f2a32789221767b4d5be Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Regenerate projects to be in syncAlexandru Croitor2019-11-152-6/+6
| | | | | | | | | | | | Change-Id: I3a57449c9025e22414b8337fcffdeb0f4d769af2 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * Convert QtQuickControls2 testsLeander Beernaert2019-10-083-0/+92
| | | | | | | | | | | | | | | | Initial conversion of QtQuickControls2 tests. Change-Id: I7e09e387ec90f89cc2856c7f7f2cb810b03b7fa3 Reviewed-by: Qt CMake Build Bot Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
| * Tie minor version of all imports to Qt's minor versionMitch Curtis2018-11-0249-106/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change makes all Qt Quick Controls 2 imports match the current Qt minor version, which is 12 as of this patch. It also updates all other Qt Quick imports to match. This will also make future version bumps easier as all version numbers in existing code/docs will match. The following commands were used to verify that no old versions remain: for i in `seq 0 11`; do git grep "import QtGraphicalEffects.*1.$i$"; done for i in `seq 0 11`; do git grep "import QtQuick 2.$i$"; done for i in `seq 0 11`; do git grep "import QtQuick.Layouts 1.$i$"; done for i in `seq 0 5`; do git grep "import QtQuick.Controls.*2.$i$"; done for i in `seq 0 11`; do git grep "import QtQuick.Templates 2.$i as T$"; done [ChangeLog] From Qt 5.12 onwards, all import versions in Qt Quick Controls 2 follow the same minor version as Qt's minor version number. For example, the import version for Qt 5.12 is: "import QtQuick.Controls 2.12". Change-Id: I6d87573f20912e041d9c3b7c773cc7bf7b152ec3 Fixes: QTBUG-71095 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Tests: move duplicated addTestRows() to QQuickVisualTestUtilJ-P Nurmi2018-04-124-85/+20
| | | | | | | | | | Change-Id: I723f1fe2e5df1ea4a09bd7e567079cdbc7124e6e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Merge remote-tracking branch 'origin/5.9' into 5.10J-P Nurmi2018-01-1047-0/+784
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/BusyIndicator.qml src/imports/controls/CheckBox.qml src/imports/controls/CheckDelegate.qml src/imports/controls/ComboBox.qml src/imports/controls/DelayButton.qml src/imports/controls/Dial.qml src/imports/controls/ItemDelegate.qml src/imports/controls/MenuItem.qml src/imports/controls/RadioButton.qml src/imports/controls/RadioDelegate.qml src/imports/controls/SwipeDelegate.qml src/imports/controls/Switch.qml src/imports/controls/SwitchDelegate.qml src/imports/controls/doc/src/qtquickcontrols2-configuration.qdoc src/imports/controls/material/CheckDelegate.qml src/imports/controls/material/ItemDelegate.qml src/imports/controls/material/MenuItem.qml src/imports/controls/material/RadioDelegate.qml src/imports/controls/material/SwipeDelegate.qml src/imports/controls/material/SwitchDelegate.qml src/imports/controls/qquickdefaultbusyindicator.cpp src/imports/controls/qquickdefaultbusyindicator_p.h src/imports/controls/qtquickcontrols2plugin.cpp src/imports/controls/universal/CheckDelegate.qml src/imports/controls/universal/ItemDelegate.qml src/imports/controls/universal/MenuItem.qml src/imports/controls/universal/RadioDelegate.qml src/imports/controls/universal/SwipeDelegate.qml src/imports/controls/universal/SwitchDelegate.qml src/quickcontrols2/quickcontrols2.pri src/quicktemplates2/qquickcontrol.cpp src/quicktemplates2/qquickmenu.cpp src/quicktemplates2/qquickpopup_p.h Change-Id: Ib25c8b4a7fe018b7c0ade9b02bfaaa6980118c15
| | * Add creation benchmarks for qmlbenchJ-P Nurmi2018-01-0547-0/+784
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The qmlbench repo has benchmarks only for a subset of controls. They are part of a larger collection of benchmarks that are run periodically, for which the results are collected to Grafana. We have limited resources there, so we don't want to overload it with benchmarks for every single control type. However, for our own benchmarking purposes it is useful to be able to easily benchmark all of them. Change-Id: I920e4c07bce8356e5d9f41d4c1d6ae43e37bb13e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>