diff --git a/src/plugins/qmldesigner/core/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/core/model/texttomodelmerger.cpp index 87c31bfad37a8b79de080eb2761058f7315de481..efeb8794ba6b412803dd2317ca1d629e72719a7e 100644 --- a/src/plugins/qmldesigner/core/model/texttomodelmerger.cpp +++ b/src/plugins/qmldesigner/core/model/texttomodelmerger.cpp @@ -382,7 +382,12 @@ void TextToModelMerger::syncNode(ModelNode &modelNode, } else { if (isValidPropertyForNode(modelNode, astPropertyName)) { AbstractProperty modelProperty = modelNode.property(astPropertyName); - syncNodeProperty(modelProperty, binding, context, differenceHandler); + if (modelProperty.metaInfo().isListProperty()) { + NodeListProperty listProperty = modelProperty.toNodeListProperty(); + syncNodeListProperty(listProperty, QList<QmlJS::AST::UiObjectMember*>() << member, context, differenceHandler); + } else { + syncNodeProperty(modelProperty, binding, context, differenceHandler); + } modelPropertyNames.remove(astPropertyName); } else { qWarning() << "Skipping invalid node property" << astPropertyName