diff --git a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/objectnodeinstance.cpp b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/objectnodeinstance.cpp
index 2f715eec9a9314d3e8bbdc39fc120b0dbaa9e8e9..ececc9b722ad68330cd9be537411c465299faa46 100644
--- a/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/objectnodeinstance.cpp
+++ b/share/qtcreator/qml/qmlpuppet/qml2puppet/instances/objectnodeinstance.cpp
@@ -53,6 +53,32 @@
 #include <private/qquickanimation_p.h>
 #include <private/qqmltimer_p.h>
 #include <private/qqmlengine_p.h>
+#include <designersupport.h>
+
+
+namespace {
+class ComponentCompleteDisabler
+{
+public:
+#if (QT_VERSION >= QT_VERSION_CHECK(5, 1, 0))
+    ComponentCompleteDisabler()
+    {
+        DesignerSupport::disableComponentComplete();
+    }
+
+    ~ComponentCompleteDisabler()
+    {
+        DesignerSupport::enableComponentComplete();
+    }
+#else
+    ComponentCompleteDisabler()
+    {
+    //nothing not available yet
+    }
+#endif
+};
+
+} //namespace
 
 static bool isPropertyBlackListed(const QmlDesigner::PropertyName &propertyName)
 {
@@ -894,6 +920,10 @@ void tweakObjects(QObject *object)
 
 QObject *ObjectNodeInstance::createComponentWrap(const QString &nodeSource, const QStringList &imports, QQmlContext *context)
 {
+    ComponentCompleteDisabler disableComponentComplete;
+
+    Q_UNUSED(disableComponentComplete)
+
     QQmlComponent *component = new QQmlComponent(context->engine());
 
     QByteArray importArray;
@@ -949,6 +979,10 @@ static inline QString fixComponentPathForIncompatibleQt(const QString &component
 
 QObject *ObjectNodeInstance::createComponent(const QString &componentPath, QQmlContext *context)
 {
+    ComponentCompleteDisabler disableComponentComplete;
+
+    Q_UNUSED(disableComponentComplete)
+
     QQmlComponent component(context->engine(), fixComponentPathForIncompatibleQt(componentPath));
     QObject *object = component.beginCreate(context);
 
@@ -968,6 +1002,10 @@ QObject *ObjectNodeInstance::createComponent(const QString &componentPath, QQmlC
 
 QObject *ObjectNodeInstance::createCustomParserObject(const QString &nodeSource, const QStringList &imports, QQmlContext *context)
 {
+    ComponentCompleteDisabler disableComponentComplete;
+
+    Q_UNUSED(disableComponentComplete)
+
     QQmlComponent component(context->engine());
 
     QByteArray importArray;