aboutsummaryrefslogtreecommitdiffstats
path: root/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2022-09-27 10:03:37 +0200
committerEike Ziller <eike.ziller@qt.io>2022-09-27 10:03:37 +0200
commit7eaa36e6e58a7c4ff8ec8a691c2a5abc39ae5f30 (patch)
tree872b997978f8065ec1d58df52301d9e1b308683c /share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp
parent21c5d3499ba143f4ff703410174e27c11f7ddda3 (diff)
parent4da66867051b27354b71ff6b4690d4e2d1e53bd6 (diff)
Merge remote-tracking branch 'origin/8.0' into 9.0
Conflicts: src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp src/plugins/qmldesigner/designercore/imagecache/meshimagecachecollector.cpp Change-Id: I38f196e8f42cf11f7b613e7a723745600e35c5e9
Diffstat (limited to 'share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp')
-rw-r--r--share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp
index 2e6ccead54..918e147798 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/quickitemnodeinstance.cpp
@@ -846,6 +846,10 @@ void QuickItemNodeInstance::setPropertyVariant(const PropertyName &name, const Q
void QuickItemNodeInstance::setPropertyBinding(const PropertyName &name, const QString &expression)
{
+ static QList<PropertyName> anchorsTargets = {"anchors.top",
+ "acnhors.bottom",
+ "anchors.left",
+ "achors.right"};
if (ignoredProperties().contains(name))
return;
@@ -857,7 +861,15 @@ void QuickItemNodeInstance::setPropertyBinding(const PropertyName &name, const Q
markRepeaterParentDirty();
- ObjectNodeInstance::setPropertyBinding(name, expression);
+ if (anchorsTargets.contains(name)) {
+ //When resolving anchor targets we have to provide the root context the ids are defined in.
+ QmlPrivateGate::setPropertyBinding(object(),
+ context()->engine()->rootContext(),
+ name,
+ expression);
+ } else {
+ ObjectNodeInstance::setPropertyBinding(name, expression);
+ }
refresh();