diff --git a/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp b/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp
index 1b3cde6fd5a7f8cf7fefd95023291727ea6e98c3..2206ba8fa6885516d9ab82000f953d33769f1e46 100644
--- a/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp
+++ b/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp
@@ -205,6 +205,8 @@ void StatesEditorView::modelAttached(Model *model)
         insertModelState(i, state);
     }
 
+    for (int i = 0; i < m_modelStates.count(); ++i)
+        m_editorModel->updateState(i); //refres all states
 }
 
 void StatesEditorView::modelAboutToBeDetached(Model *model)
diff --git a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
index c249a212c54dc5c8cbae2865731121807e61e4e3..a1c97686facd231822ce196f24648ba18be7403b 100644
--- a/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
+++ b/src/plugins/qmldesigner/designercore/instances/nodeinstance.cpp
@@ -190,7 +190,7 @@ NodeInstance NodeInstance::create(NodeInstanceView *nodeInstanceView, const Mode
 
     instance.setId(node.id());
 
-    QObject::connect(instance.internalObject(), SIGNAL(destroyed(QObject*)), nodeInstanceView, SLOT(removeIdFromContext(QObject*)));
+    //QObject::connect(instance.internalObject(), SIGNAL(destroyed(QObject*)), nodeInstanceView, SLOT(removeIdFromContext(QObject*)));
 
     foreach (const VariantProperty &property, node.variantProperties()) {
         if (property.isDynamic())
diff --git a/src/plugins/qmldesigner/designercore/metainfo/subcomponentmanager.cpp b/src/plugins/qmldesigner/designercore/metainfo/subcomponentmanager.cpp
index 03bbde79983f14ea4133bc0dbaef686cce013a4a..f381e77df13964cd75a727df421b4861bf99aa2c 100644
--- a/src/plugins/qmldesigner/designercore/metainfo/subcomponentmanager.cpp
+++ b/src/plugins/qmldesigner/designercore/metainfo/subcomponentmanager.cpp
@@ -88,6 +88,7 @@ public:
 public slots:
     void parseDirectory(const QString &canonicalDirPath,  bool addToLibrary = true, const QString& qualification = QString());
     void parseFile(const QString &canonicalFilePath,  bool addToLibrary, const QString&);
+    void parseFile(const QString &canonicalFilePath);
 
 public:
     QList<QFileInfo> watchedFiles(const QString &canonicalDirPath);
@@ -294,6 +295,11 @@ void SubComponentManagerPrivate::parseFile(const QString &canonicalFilePath, boo
     }
 }
 
+void SubComponentManagerPrivate::parseFile(const QString &canonicalFilePath)
+{
+    parseFile(canonicalFilePath, true, QString());
+}
+
 // dirInfo must already contain a canonical path
 QList<QFileInfo> SubComponentManagerPrivate::watchedFiles(const QString &canonicalDirPath)
 {
@@ -369,9 +375,6 @@ void SubComponentManagerPrivate::registerQmlFile(const QFileInfo &fileInfo, cons
         if (dynamicProperty.isDefaultProperty())
             nodeInfo.setDefaultProperty(dynamicProperty.propertyName());
 
-        if (dynamicProperty.isAlias())
-            qDebug() << dynamicProperty.propertyName();
-
         PropertyMetaInfo propertyMetaInfo;
         propertyMetaInfo.setName(dynamicProperty.propertyName());
         propertyMetaInfo.setType(dynamicProperty.propertyTypeName());
diff --git a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
index 6ec6ce851f565687be0bbd81d6e3818f9da389b0..49c990d04b66fb538540cb1e570ad2496d090ae5 100644
--- a/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
+++ b/src/plugins/qmldesigner/designercore/model/texttomodelmerger.cpp
@@ -554,6 +554,7 @@ bool TextToModelMerger::load(const QString &data, DifferenceHandler &differenceH
 
     { // Have the QML engine check if the document is valid:
         QDeclarativeEngine engine;
+        engine.setOutputWarningsToStandardError(false);
         foreach (const QString &importPath, importPaths)
             engine.addImportPath(importPath);
         QDeclarativeComponent comp(&engine);