Do not use QQuick3DObject when disallowing recursive component complete
check so that the animations get added to the instance server.
Fixes: QDS-5731
Change-Id: Iff8e39f74d68b312b66d68adaf6ab79d625f88f8
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
The include is not required and
the whole class defined inside is not used since Qt 5.6 anymore.
I will remove the pre Qt 5.6 code in another patch.
Change-Id: Icfc13376ceba3ee16b516156727f743e49a85127
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Repeater3D instance instantiated by another Repeater3D got its
componentCompleted called twice because a repeater constructing a
child repeater already completes the component as part of the process,
and then we recursively complete the children again when completing
the parent. Added a check to avoid duplicate completions.
Fixes: QDS-5651
Change-Id: Iefc7deff4877df903f784396f2efd13468f604b7
Reviewed-by: Samuel Ghinet <samuel.ghinet@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Add a way to edit and view particles visually, as editing
only the properties in property editor does not help visualize
how the particle effect is going to look. Support toggling the
effects on/off, pausing, resuming, and scrubbing the time back
and forth. Only the selected particle system is animated to allow
concentrating on that particular system without being confused
by other possible particle systems.
Fixes: QDS-4623
Change-Id: I2677c56a73279d451d77df1d131bd7294e6b23bb
Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
QQuickStyleItem crashes if componentComplete() is called.
Change-Id: I1df1b50f6ba95c0eda1ff8e18de85276a6de04f5
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
For Qt versions below 5.15 and Qt 6 we can continue to use
the internal version.
Change-Id: Ia314fe9db323b0d5ea6acbb70bf1cb1098b4ae93
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Limit the depth of recursion. There can be cycles.
Task-number: QDS-3877
Change-Id: I10a1c7033b956244308e87aae6897f0040e0bc22
Reviewed-by: Mahmoud Badri <mahmoud.badri@qt.io>
We have to ensure to properly call all Component complete handlers.
A single component usually has QQmlComponentAttached objects,
which we have to iterate over.
Therefore emitComponentCompleteSignalForAttachedProperty() is not correct.
Task-number: QDS-269
Change-Id: I4aed5d511f9f6e21f72efb955fc6db21b70e7c42
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
The infinite recursion occurs because we call QFileInfo::exists()
even if no change/fix is done, if a file in a resource if actually
missing.
If fileName != fixedPath the ":" prefix has been replaced by an
absolute path and a new call to ::create will early reject.
Typically the directories do not match, so nothing is replaced.
This crashed without the fix.
With the fix we will always remove the ":" prefix
and therefore we do not try to handle the "fixed" case.
Even, a broken path that contains multiple ":" we would
only handle a finite number of times until all ":" are fixed.
Change-Id: Ie13cedc1212bb58a16c61e0137128539d189269d
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
QML does not accept absolute paths (e.g. C:\working\something\) as urls.
We need the file:/// prefix.
Change-Id: I9df74cd9c0e730fba056af971751f8eb88cdb536
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
Problem was that a file added to resource it
wasn't shown in the canvas.
Change-Id: I57610db8a55791c409bd249d698bf757cde153b9
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@theqtcompany.com>
The code model knows about .qrc files and has a mapping
that we forward to the qml2puppet.
Support for .qrc was broken when introducing the QmlPrivateGate.
Change-Id: I22d1c1add65d0c9a914e471dbe51ef505f308494
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
In Qt 5.6 we do not need to access the private API directly.
QmlPrivateGate is forwarded to the helper functions in Qt.
Change-Id: I274cb306815824c988b6d79966f007298f6d1e60
Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>