diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
index 753daa8c9ae5dbab81ea02f22c8544bbbc1f0da8..e53a4dfdc101b2e0a9993c5afd2a65ec4d132f36 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp
@@ -436,6 +436,15 @@ void FormEditorView::changeToCustomTool(const ModelNode &modelNode)
     }
 }
 
+void FormEditorView::changeToCustomTool(AbstractCustomTool *customTool)
+{
+    m_scene->updateAllFormEditorItems();
+    m_currentTool->clear();
+    m_currentTool = customTool;
+    m_currentTool->clear();
+    m_currentTool->setItems(scene()->itemsForQmlItemNodes(selectedQmlItemNodes()));
+}
+
 void FormEditorView::registerTool(AbstractCustomTool *tool)
 {
     tool->setView(this);
diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.h b/src/plugins/qmldesigner/components/formeditor/formeditorview.h
index 87815d7f06a0739281065430d5f17a501a330e56..deabbee8a4b022a1c3e5b78f903d1f918c445962 100644
--- a/src/plugins/qmldesigner/components/formeditor/formeditorview.h
+++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.h
@@ -100,6 +100,7 @@ public:
     void changeToResizeTool();
     void changeToTransformTools();
     void changeToCustomTool(const ModelNode &modelNode);
+    void changeToCustomTool(AbstractCustomTool *customTool);
 
     void registerTool(AbstractCustomTool *tool);