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
This commit is contained in:
Eike Ziller
2022-09-27 10:03:37 +02:00
61 changed files with 932 additions and 201 deletions

View File

@@ -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();