| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
We want it to be available early in the build process.
qmltyperegistrar will be required to build qml, quick, and various
imports.
Change-Id: I15b827cd4b322a2bcea2780eeedb8dbe132aa59a
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
| |
As we use QML_IMPORT_MAJOR_VERSION, QML_IMPORT_MINOR_VERSION, and
QML_IMPORT_NAME, it's strange that we required the raw import version
to come without the "QML_".
Change-Id: Ida7d677851edf8f4d0179ea2a14772620d65bfa1
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
| |
Change-Id: I0084b03651c93ea26cd93edf1badcce4721ef993
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|\
| |
| |
| | |
Change-Id: Iaa7dbbe9926d25cfb1b1c51e7013e58cb71d86b5
|
| |
| |
| |
| |
| | |
Change-Id: I02a6f4dd1804251e0420f2fbc334ee9c38d3dc49
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reuses the ResourceFileMapper and extends it slightly to return
full paths on request. Subsequently, this is moved into a shared
directory inside tools.
Fixes: QTBUG-55259
Change-Id: Ice5fc68d03b767a4185742e182556ab4290bd28d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog] The qmlmin tool is deprecated and not needed anymore. The
built-in caching of qml files addresses the needs and unfortunately the
tool does not work with more advanced concepts such as required
properties or the ES 7 yield statement. It will be removed in Qt 6.
Change-Id: I2830f91d1dc2ad5e3c66270dad8e25793587ae7f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We may have QML.Attached in some classes we don't want to register.
QML.Attached needs to be on the original class, even if the class is
registered as a foreign type in some other context.
Change-Id: I3d46fa351a2e595e879f0d2d8cc441d59c9dd754
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unconditionally using QT_VERSION_MINOR is not a great idea for user
projects. Yet, we have to specify some minor version, at least for now.
Change-Id: Id9d0d0417a2ac6b8775cef755357274d8fbd637d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
We cannot generate anything sensible in those cases.
Change-Id: I6005b970cedd999212920759a3dd45827b79b77c
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I6e69a235f50472b8f7ac19e133a3c071ea8c4d7a
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before we would always merge everything up to QObject. That would
duplicate entries between types that inherit from the same base class.
Also, when the composite type doesn't specify a module (because we just
created a component from a plain QML file), use the module URI from our
version info. As we're dumping the component we can assume it belongs to
the module we're dumping.
Change-Id: Icf9a58cfe1165f557ebbf7309251e98a0782dc33
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
They are unused.
Change-Id: Id49720bead07e353e448d92a53c2c6aabe265d3a
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I80783289452300d4609a27f5b470ecdeeeca5e71
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We can use the new moc JSON output to collect all meta-objects at build
time and, for those that include QML element registration meta-data,
generate code that automatically registers these types with QML. This
eliminates the need to call qmlRegisterType manually.
For now this generates free-standing functions (per module) that need to
be called manually. This is intended as an intermediate step.
Task-number: QTBUG-68796
Change-Id: Ib414eef9757344feee488ebc7388f957b975347f
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
It was incorrectly parsed in case of "as Foo", and it was mostly unused.
Change-Id: Ie833a8eb247108cb7bcd6ca3e6f3e5df614461cf
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I2835748c27616103f275849141fbe5a93e3dfd8c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use the correct commands for toggling the recording status and flushing.
Also don't clear the event types when clearing the profiler data after a
flush, as those remain valid and are needed for processing in the
future.
Change-Id: I5a3cd5aa33e43a3e81c53cbbaa0c5b8fb407c5bb
Fixes: QTBUG-78044
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/imports/qtquick2/plugins.qmltypes
src/quick/items/qquickitemsmodule.cpp
Change-Id: I841c65c9c131354788b4f3fcfe3d7ed27be316d5
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously the sorting depended on qHash(QQmlType), which hashes a
pointer to QQmlTypePrivate. That was not very useful.
Also, the defaultCompositeTypes were only populated when dumping
builtins, and only used when dumping regular types. Therefore, whenever
they were used, they were empty. We don't have to bother with that.
Change-Id: Ibfbfc7e14bee900d617bab58cbe39d05f5fe91c3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise the shutdown mechanism for debug services doesn't work.
Fixes: QTBUG-78828
Change-Id: I4ede5861a300d5b5007036d71ed84409ec4d450f
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If not given a "--strict" argument, qmlplugindump will ignore the given
major version and only check the URI as prefix, not as exact match. This
is in line with what qmlplugindump did in version 5.13 and before.
Fixes: QTBUG-78745
Change-Id: Ib2803d47e6cb60c797fec8dfaa628278307d4cd4
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We do not put the objects we encounter in defaultReachaleNames. Thus,
the check in prototypeNameForComposite will fail most of the time.
Instead, we now use the same check as in collectReachableMetaObjects
(that is, does the type belong to the module).
Then, we once again only collect the metaobjects belonging to the module
in objectsToMerge, and only dump the relevant properties from there.
Fixes: QTBUG-78744
Change-Id: I78cae1e56b6f59e277198f9bcd0d826c4e0978a7
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: If8b4f5302cc1ee3a4193b354503b304534d7dfd9
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Using this technique we can automatically register all necessary
revisions and minor versions of a type, using the metaobject system.
This greatly reduces the potential for mistakes and resulting
incompatibilities between versions of imports.
We assume that for each type we need to register all revisions of its
super types and its attached type, and that the revisions match. That
is, if you import version X of type A, you will also get version X of
its attached type and of any super types. As we previously didn't take
these dependencies into account when manually registering the types, a
number of extra revisions are now registered for some types.
Potentially, we can now generate the qmltypes files at compile time,
using moc.
Change-Id: I7abb8a5c39f5e63ad1a0cb41a783f2c91909491b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This makes it possible to resolve components which were either directly
registered in the application or specified as composite types in qmldir
files.
Change-Id: I42482563f31ac780d6b37e62375d09d122c4a308
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Re-apply commit c5578b16d6454e708c8ce12661a85d41eeaaa758 now that with
commit 41864db3b61d9e81a9fe4906918d2cd3d6d32a0c the .qml/.js/etc. files
are always retained. The difference is that now this is not an error
situation but merely a reason to skip processing.
Fixes: QTBUG-73669
Change-Id: I53e1e7d471a66e82694ceca83c548c03aaf88f87
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Commit 41864db3b61d9e81a9fe4906918d2cd3d6d32a0c removed the processing
of .qrc files that removed .qml/etc. files. Since the chaining of
resources remains critical to ensure that the cached compilation units
are loaded, the build system copied the input .qrc file to a new one.
That mere copying caused the build to break when the copied .qrc file
was not in the same directory as the original one, as file paths within
the .qrc file are interpreted as relative to the .qrc file, which was
now in a different location. To fix this, this patch brings back the
"filtering" code that rewrites the paths to the source files in the .qrc
file.
Fixes: QTBUG-78253
Change-Id: Ie1d56f3248e713a964260bc2da37c9374f7b6a36
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ie63654139aeb7bfd241be865f33c399c23e08cc3
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
We don't need the values and they are hard to determine statically.
Change-Id: I3453e67a18b6d0212748795fd0ea0baaff61b522
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][QtQml][Important Behavior Changes] Using the Qt Quick
Compiler would exclude the original .qml files from the resource system.
This made it impossible to change the Qt library binary later as the
program binary was tied the to the exact Qt version. In addition
sometimes unrelated files (QTBUG-73669) were removed. For the latter
scenario, retain and skip options were added for the Qt Quick Compiler.
In Qt 5.15 the Qt Quick Compiler does not remove the input files
anymore. All files are retained and the compiler merely adds the more
efficient binary representation to the application.
Task-number: QTBUG-73669
Change-Id: I5a523bfc69d4f48a1451bd880616c82fd73b8d15
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I0be7a3a8177697a4d47526d703329e2e0bb455f7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2c13e8fc173e5e155d07a1bbf8547df65605ba10
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I71e9e2d5b4623938605d7afbfc79ae5c7d4251fc
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I9d86daa737d30ea0f76af431c59f44d59d4786e4
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|/
|
|
|
|
|
|
| |
Those are typically part of Connections elements. We want to use
functions instead.
Change-Id: I08b65eae8b8a6ba95f7a3570f5465961abbb506e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now that our own types are not registered with qmlRegisterType<T>() anymore,
we can use QQmlType::module to decide whether a type should be included
in the qmltypes file.
We include types with no module, to support existing user code which
still calls qmlRegisterType().
Change-Id: Iee0a132bf5b3ddcdfc222ab4b2d37a1f05b1851d
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|\ |
|
| |\
| | |
| | |
| | | |
Change-Id: I9ce3eee3d6f88783b9e20110a2814bee805291a4
|
| | |\
| | | |
| | | |
| | | | |
Change-Id: I042df89ddd381c7fbb944b7ff49d5b45b764fd47
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This reverts commit c5578b16d6454e708c8ce12661a85d41eeaaa758, because
it prevents enabling the qtquickcompiler feature globally.
Fixes: QTBUG-77277
Change-Id: Ic80835c462570a67ae3105bb3d1b6452800d2c94
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|/ / /
| | |
| | |
| | |
| | | |
Change-Id: If990efb64a4117bc7624062fededa7ce6a910f14
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
findunqualified.cpp(776) : warning C4172: returning address of local variable or temporary: dbg
Change-Id: Ifce7ccdcce9ed629a2a9dd4759620d02804812b7
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I2e679fe4fbebff7d8252da6ea69aed3cc9ffab41
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I815f82ed8c005ed83ceecff6ce80106a9ad9b21d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change adds a new -cmake-output command line argument to
qmlimportscanner which outputs its result in a format which is
consumable by CMake.
This change also adds a new CMake package called Qt5QmlImportScanner.
It provides a function called QT5_IMPORT_QML_PLUGINS()
which is useful for projects that use a static build of Qt and which
also use QML plugins.
Calling it with the target name of your application does the
following:
- Runs qmlimportscanner at configure time to find out which QML /
QtQuick plugins are used by your project
- Links the imported QML plugins into the target
- Links the static dependencies of the QML plugins into the target
- Generates a .cpp file that initializes imported QML plugins,
which is subsequently compiled and linked into the given target
When Qt is built in a shared library config, the introduced function
is a no-op.
[ChangeLog][CMake] Added ability to import static qml plugins with
CMake builds using the new QT5_IMPORT_QML_PLUGINS function.
Task-number: QTBUG-38913
Change-Id: Ib9b9a69654eab13dfbe12d10f5cb28ba3c307d1b
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
+ qDebug/commented out code cleanup
Change-Id: Id6a4410391eed2fbf6ff0dd7aaffa1de4d5b892c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Do not warn about parent access in unknown components
This avoids false positive warnings when an imported component could not
be found (or when it actually was not imported).
We still warn about the component which could not be found, so the user
is still informed that something is not right.
We also still emit a warning when we know the properties of a component,
and parent is not one of them.
- Do not recommend the use of parent to address the root components
properties. For this to work, we would need to know whether the root
component reparents its children or not. Moreover, id lookups are
actually faster than parent lookups.
Change-Id: I83d0e71e4bf20d34a3e6d836c2b123b2bf0d416e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Fix the case where multiple unqualified accesses would be mapped to
the same signal (wrong in all but one cases), as the event parameter
has the same name and we were using a QHash. Fixed by using QMultiHash
and searching for the matching signal handler (by location)
- Recommend arrow functions for single line event handlers
Change-Id: I3cbb85fe0e49b454908ca03b4c86318ef02e364c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|\ \ \ |
|