aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlimport.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/tqtc/lts-6.2.8' into ↵Tarja Sundqvist2024-02-201-0/+60
|\ | | | | | | | | | | | | | | | | tqtc/lts-6.2-opensource Conflicts solved in a file: dependencies.yaml Change-Id: Ib4083daa41a689b937d2aeb522e93e3aab0be1c4
| * QQmlImport: Handle file selectors in qmldirFabian Kosmale2023-01-251-0/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With file selectors, a type can exist in the same version under different paths. Detect this case, canonicalize the filename to the selector free version, and rely on the engine to resolve a URL to the correct file. Fixes: QTBUG-107797 Change-Id: I0f74fd37936abfa08547fb439bfa5264e6ca4787 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 9bfb27be010940ca735ca7dd67a092a03289e27c) Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
* | Revert "Update commercial license headers"Tarja Sundqvist2022-11-241-21/+21
|/ | | | | | | | | | | This reverts commit 74089697cf2a4961fb697100555b17ae2342d734. Revert of commercial license headers is required for the Qt 6.2.x opensource releases, Qt 6.2.5 onwards. Task-number: QTBUG-107760 Change-Id: Id49069cb5e5f261da185fd082dfb71deb259d387 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* qqmlimport.cpp: remove unused qreadwritelock.hMarc Mutz2022-06-041-1/+0
| | | | | | | | | Amends 3fa8540800c43ccc4e4c1f8f323fb5ade34044db. Change-Id: I942c81107065ba5348c7e7d98904618c469b745c Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 6e2d70f2b8a0a02d01ca9dba759bd3d5eec32235) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Update commercial license headersTarja Sundqvist2022-06-041-21/+21
| | | | | | | | | | | | | | | Updated header.COMM to the files in tqtc-qtdeclarative. Examples, tests, or documentation files are not updated. The commercial license header may contain some additional lines so that its line count equals with the earlier license header. Reason for this is that some autotests use hard coded line numbers and a change in the line count causes failures in tests. Task-number: QTQAINFRA-4941 Change-Id: I32f554b0a8cb527f74d46f3c02b0e745d9fc5ddf Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* qqmlimport: Log when no qmldir file is foundAlexandru Croitor2022-03-221-1/+1
| | | | | | | | | | | | | | Also log when it is found, with the path where it is found. As a drive-by, add a 'version' label before printing the version of an imported library. In a static build where some libraries end up with a version set to 'invalid', it's clearer that the version is invalid, and not the library. Change-Id: I998776b13bfe98f1668790419f1102e081878c99 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> (cherry picked from commit 22b69dae253981b67124fc38adab666eb2d750be) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QML: Explicitly reject malformed file importsUlf Hermann2022-03-021-0/+12
| | | | | | | | | | | You cannot just pass a resource path or absolute path. We expect a URL after all. A relative path is a relative URL, so you can pass that. Fixes: QTBUG-98181 Change-Id: I010bc08b8cb0ff06712f7b0353955bee96ae36c1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 1240a440f29762850a9206bdf9961cebe015c1fa) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add includes to fix build after changes in qtbaseVolker Hilsheimer2021-11-171-0/+1
| | | | | | | | | | 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>
* Allow import of modules with only C++ types built into the binaryUlf Hermann2021-08-191-2/+6
| | | | | | | | | | Check if the module provides a .qmltypes file. If so, we assume that there are some C++ types to be imported. Change-Id: Iad15d9c834c9bcebd76a62926620902031493557 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 358976b7ad28226136d3ac04260f82e88dbf784a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix QML_IMPORT_TRACE and qt.qml.import logging categoryUlf Hermann2021-07-011-24/+47
| | | | | | | | | | | | Make sure that QML_IMPORT_TRACE actually takes effect by explicitly setting the QtDebugMsg category to be enable if it's set. Also, de-clutter the messages and use the logging category everywhere. Change-Id: I1779f0b0270672587cfd48b07a75be7494a4575f Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Fawzi Mohamed <fawzi.mohamed@qt.io> (cherry picked from commit 05a86e31a8cba3e7acf36b8aaf10b12b689bf859) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Drop dead codeUlf Hermann2021-07-011-8/+0
| | | | | | | | Change-Id: I39e0ad37c188de7933acda8decb0ee088831f7ac Reviewed-by: Fawzi Mohamed <fawzi.mohamed@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> (cherry picked from commit e5487ee030685967053892ca8d8a9d1ca51e3c3f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QtQml: Key plugins by URI where possibleUlf Hermann2021-06-301-2/+9
| | | | | | | | | | | | | | | | | | | | | | | This allows us to associate different qmldir files for the same module with one another. Typically there is one qmldir file in the resource file system and one in the QML import path. We cannot load plugins for the latter, but usually we have already loaded any plugins we need. Now we can detect this. This requires us to construct a proper URI for implicit imports. The easiest way to do this is to just use the URI from the qmldir if available. Modules with versions encoded in their paths and modules with multiple plugins cannot be resolved by URI only. These continue to be keyed by path. However, as we do not generate such modules, we will not automatically get two instances of those, and we won't have to fall back from one to the other. Change-Id: Ic79add936d263a8e559fd998fca15a6ae160952e Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit bae18ecd340f8a952d1b3be2b309d50e84707c69) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QtQml: Move locateLocalQmldir and make it a templateUlf Hermann2021-06-291-93/+17
| | | | | | | | | | | | | | | | It conceptually belongs into QQmlImportDatabase because it messes with the qmldir cache. This way, if we reject a qmldir file for whatever reason, we can still check for further matching qmldir files in other places. We might, for example determine that we need to load a plugin, but we have been given a qmldir file in the resource file system. In that case, we want to check for other instances of the same module in the host file system. Change-Id: I8fe4a0f188f3732b9d10d017a94562e8bd1fb242 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit dbca762f45d3249974652cccb5d6421440f852ae) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QtQml: Refactor plugin loading into a separate classUlf Hermann2021-06-281-567/+45
| | | | | | | | | | | | The methods that load the plugins were suffering from an excessive number of parameters, and were dispersed across several classes. Concentrating them in one place and transforming all the parameters into members makes the code more readable and easier to extend. Change-Id: I67e4f49567ad37363a0f38d8f7773de863856554 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> (cherry picked from commit 686fdc218fade4a72b6b2be0b1a16b88b778f8b8) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix build without library configurationJanne Koskinen2021-05-281-1/+3
| | | | | | | | QPluginloader has no instance() function with no library Change-Id: If74572f9bf4e7d3db3406a021dfcc77a348efb59 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
* Ensure that the case of the path will match then QUrl for a UNC pathAndy Shaw2021-03-091-3/+8
| | | | | | | | | | | | | | | | | | | When a UNC path is used to locate the qmldir then when it is checked later on the original path will be compared against the one that QUrl returns. However, QUrl will convert the case of the host name to be all lower-case whereas the original string may have been in upper-case. For example, QUrl::fromLocalFile("//QT-L-R90X9VHB/tasks").toString() will output "file://qt-l-r90x9vhb/tasks". So in this case, the absoluteFilePath is changed at this point so that it will match what QUrl has for the same path to avoid a problem with it no being found. Pick-to: 6.1 6.0 5.15 Change-Id: I2cd5d74bfec06c01635f80574ac1a6d479792855 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add a "prefer" directive to qmldirUlf Hermann2021-03-041-2/+12
| | | | | | | | | | | | | | | | | | | | | The argument is the path from which further files from the module should be loaded. This allows us to load potentially pre-compiled files from a resource contained in a plugin. The qmldir file has to be stored outside the plugin in order for the QML engine to find it, but the QML files can now be stored inside the plugin. [ChangeLog][QtQml] You can now specify that QML files in a QML module should be loaded from a different place than the directory where the qmldir file is found. To do this, add a "prefer" directive to the qmldir file. The most useful application of this is adding the QML files as resources to a plugin, and using qmlcachegen to pre-compile them. You can then add their path inside the resource file system as "prefer" path in order to make the engine load the pre-compiled files. The plain files should still be installed next to the qmldir file so that they remain visible to tooling. Change-Id: Ib281b39230621b3762432095a47fb499412cbaa6 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QQmlImport: Fix naming of qmldir locationUlf Hermann2021-03-011-14/+8
| | | | | | | | pluginLocation() was rather misleading. Also, resolve the location inside importExtension(). Change-Id: I4286fbcb1ecd7641106ea0ef67fd9b6e59c8e492 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QQmlImport: Don't cache localDirectoryPathUlf Hermann2021-03-011-3/+6
| | | | | | | It's only used in one place. We can just calculate it there. Change-Id: If9d1c7e6a6fc012eeba8fff9ce24d3c4b149c914 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QQmlImportDatabase: Make sure the newly added import path be firstJaeyoon Jung2021-02-221-3/+6
| | | | | | | | | If it already exists in the import list, move it to the first place. This is as per the description of QQmlEngine::addImportPath: | The newly added path will be first in the importPathList(). Change-Id: I782d355c46ada2a46cff72e63326208f39028e01 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix lookup of existing inline components by nameUlf Hermann2021-02-191-1/+1
| | | | | | | | Previously this would always return the inline component iwth ID 1. Pick-to: 5.15 6.0 6.1 Change-Id: I49dc6eb64fcd8428667f3b22afcb7212aa792db3 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Support and prefer QML_IMPORT_PATH over QML2_IMPORT_PATHUlf Hermann2021-02-101-27/+33
| | | | | | | | | | The 2 is meaningless. Task-number: QTBUG-85064 Change-Id: I9f140155d274c691b5eab1285d9b7153f9f93a87 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Use QLibraryInfo::QmlImportsPath rather than Qml2ImportsPathUlf Hermann2021-02-091-2/+2
| | | | | | | | | The "2" is meaningless and there is a better name available now. Task-number: QTBUG-85064 Change-Id: I65d26b06712ed7dcf2825f16dffaa6060dd86985 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
* Make QQmlImport::removeDynamicPlugin() saferUlf Hermann2021-01-121-28/+24
| | | | | | | | | | | | | Consistently never unload plugins on macOS, also remove half-broken plugins from the map, and always unregister any types in them. Unloading plugins on macOS is ill-advised as it will actually unmap the memory, making string data (among other things) inaccessible. We've already done the same change to qmlClearEnginePlugins(). Change-Id: I8fa40db5c3cd83f12e6d85d0efc3b9679dd4381e Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Add debug trace when a static plugin is loadedAlexandru Croitor2020-11-101-0/+5
| | | | | Change-Id: Icc4ff1f78bca75c59af1c2550fae15a2489a8bf1 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Standardize QJsonArray iterationDavid Skoland2020-10-281-2/+2
| | | | | | | | | When using refs as loop variables, the clang compiler complains (with default settings). This prevents that. Note that QJsonValueRef is used "behind the scenes", which makes this iteration method correct. Change-Id: I5a5f58ca8ad3887bce2009231cbae5a57c107697 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Adapt QMutexLocker to qtbase changeFabian Kosmale2020-10-181-1/+1
| | | | | Change-Id: Ica9561a42217f5a509a6e84e9e48036ec6348e48 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* qqmlimport: Use stable_partition instead of stable_sortFabian Kosmale2020-09-281-2/+2
| | | | | | | | | | | | We do not actually need to sort the imports list, we just require that all inline component imports come before all other imports. This avoids triggering a MSVC STL debug assertion about the used Compare function not actually creating a strict ordering. Fixes: QTBUG-86989 Pick-to: 5.15 Change-Id: I381852392545287ec02b186fcb4f33be3ae95b33 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Avoid crash when module version cannot be resolvedEskil Abrahamsen Blomfeldt2020-09-231-1/+5
| | | | | | | | | | | | | | | When QQmlMetaType::latestModuleVersion() returned an invalid version, we would fail importStaticPlugin() without adding any error. Since we unconditionally called takeFirst() on the errors list, we would later crash. The precondition here is that any failure adds an error, so we now assert to make this explicit. Also, add a simple module not found error when we can't resolve it. Change-Id: I7a13775b2ef56d95b7738ac53e58501b8c68895f Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* Fix additional warnings from usage of deprecated APIsVolker Hilsheimer2020-09-161-1/+1
| | | | | | | | Replace QLibaryInfo::location with QLibraryInfo::path, and remove usage of Qt::AA_EnableHighDpiScaling, which doesn't have any effect anymore. Change-Id: I347e8a83e0f4c2b4405f2512e569ad3234f05a98 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Match specific module imports also for versionless QML importsUlf Hermann2020-06-291-123/+173
| | | | | | | | | | Previously, if you registered a module import for a specific version X of a module, and the user imported the module without specifying a version, the module import would not be carried out even if X was the version actually imported. Change-Id: I853ed6f275501cf4cbd4e5a360985e67b07f3773 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Lock all type modules of the same URI when importing a pluginUlf Hermann2020-06-181-1/+1
| | | | | | | | | | | | | A plugin may provide multiple versions of the same types. If we don't lock them all, a further plugin may later mess with the ones we didn't lock. The code clearly attempts to prevent such a situation. Of course, a plugin may still register types under a wholly different URI, and sidestep this mechanism. However, in contrast to exposing multiple major versions from the same plugin, this is not recommended. Change-Id: Ib8d8bbeec8e738020c6d07aedcc4664157b80dcf Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Unify error messages in qqmlimport.cppUlf Hermann2020-06-171-30/+31
| | | | | Change-Id: Iaa899f76f62273dd7cd5808ee090fcc6fcebf660 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Drop the "plugin cannot be loaded" extension to error messagesUlf Hermann2020-06-171-16/+0
| | | | | | | | This message adds very little extra value, and it complicates the tests that check for specific errors. Change-Id: I58553a8cbc56c3333c8e9815518cca5fa01fdde1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Port QtDeclarative from QStringRef to QStringViewKarsten Heimrich2020-06-161-7/+7
| | | | | | | | 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-151-0/+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>
* QML: Fix precedence of module importsUlf Hermann2020-06-111-24/+43
| | | | | | | | Types imported transitively via a qmldir import statement should not shadow types available from the module itself. Change-Id: Id34edc5c5e2fff4ba37009f4bab9039b7ed18dff Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QQmlImport: Parse resource paths from QML2_IMPORT_PATHUlf Hermann2020-06-101-6/+22
| | | | | | | | | We can interpret double colons as start of resource paths. Task-number: QTBUG-69435 Change-Id: If2b4412c28c7c59f160ddfcfe04ec293af437660 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Deduplicate the import resolution algorithmUlf Hermann2020-06-101-53/+5
| | | | | | | We will need it in various other places, too. Change-Id: I61c55f88b66ab85448ae8fff125fe34108532fc4 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Remove uri member from loaded plugins mapUlf Hermann2020-06-091-19/+4
| | | | | | | It is only used for error messages and asserts. Change-Id: Ib68d25e4341d4a0b8cebce0a72ddef9005202707 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* QML imports: Improve naming and safety of path-to-plugin mapUlf Hermann2020-06-091-48/+63
| | | | | | | | We need to make sure the global map is always locked when using it, and we may not necessarily register any types from the plugins we load. Change-Id: Ib9da33baa9597b112408251e0cf01b5bb735ec42 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Allow QML plugins to be optionalUlf Hermann2020-06-091-50/+74
| | | | | | | | | | | 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>
* QQmlImport: Make plugin resolution functions const and publicUlf Hermann2020-06-051-2/+2
| | | | | Change-Id: If21f788807cbcf5b134a9af5713eec6ec60fb362 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-03-181-0/+18
|\ | | | | | | | | | | | | Conflicts: tools/qmllint/findunqualified.cpp Change-Id: I2593b5cc0db1d14e0c944aec4b88a80f46f5b0c1
| * Prefer Inline Components over any other imported nameFabian Kosmale2020-03-161-0/+18
| | | | | | | | | | | | | | | | | | | | | | After processing all other imports, there might be other imports both in front and behind of the inline component imports in the import list. To avoid having to search for them, we sort the list so that they are in front. Fixes: QTBUG-82302 Change-Id: I9f6deb03608b1ebd0cbe0eddd1a1e5d39837a783 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Allow multiple URL interceptors per engineUlf Hermann2020-03-171-9/+8
| | | | | | | | | | | | | | | | | | | | | | We may want to have, for example, a QQmlFileSelector and a component-specific interceptor that chooses a theme or similar. Also, make the API public. We want to propose this as alternative to dynamically registering QML files via qmlRegisterType(QUrl, ...). Change-Id: I4a535d3ea556da6710fde816579ec188b3f57099 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | Allow partial and absent version specifiers in import statementsUlf Hermann2020-03-171-17/+29
| | | | | | | | | | | | | | | | | | | | An import statement without version specifier imports the latest version available, one with only a major version imports the latest minor version from that major version. Task-number: QTBUG-71278 Change-Id: I43907ae4e1052be533039d545de5391c41d38307 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | Avoid unloading plugins which register types to prevent crashesFabian Kosmale2020-03-091-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Plugins could register an arbitrary number of types in arbitrary places with qRegisterMetaType. This would lead to crashes when the plugin is unloaded, as the type registry would hold stale references to their QMetaTypes. By not unloading the plugin, the metatypes are kept safe in memory. [ChangeLog][QML][Important Behavior Changes] When writing a QQmlExtensionPlugin which procedurually registers types, you should overload the newly introduced unregisterTypes function, if you want to support unregistration with qmlClearEnginePlugins. Additionally, the destructor of your plugin should not contain any logic. Change-Id: I63b7a153f82be7996dbfca4d36f279c351dc6b9e Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2020-03-091-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/qml/compiler/qqmlirbuilder_p.h src/qml/qml/qqmlpropertycachecreator_p.h src/qmltyperegistrar/qmltypesclassdescription.cpp src/qmltyperegistrar/qmltypesclassdescription.h src/qmltyperegistrar/qmltypescreator.cpp src/quick/items/qquicktext_p.h src/quick/util/qquickvaluetypes_p.h Change-Id: Ic209741592e7b85820bf3845722023a190ebc1c5
| * Use Qt::SplitBehavior in preference to QString::SplitBehaviorEdward Welbourne2020-03-021-3/+3
| | | | | | | | | | | | | | | | The Qt version was added in 5.14 "for use as eventual replacement for QString::SplitBehavior." Move another step cloaser to that goal. Change-Id: I3214ad6ccaca9dfd4a026589cabeb40cbf4a6298 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>