diff --git a/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp b/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
index ab1b8822879e3e48f0ffc56b9403bb48eed28a05..c9af54085003d934464190d168f87a3a541f867e 100644
--- a/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
+++ b/src/plugins/qmldesigner/components/navigator/navigatortreemodel.cpp
@@ -414,6 +414,17 @@ ModelNode NavigatorTreeModel::nodeForIndex(const QModelIndex &index) const
     return m_view->modelNodeForInternalId(internalId);
 }
 
+bool NavigatorTreeModel::hasNodeForIndex(const QModelIndex &index) const
+{
+    QVariant internalIdVaraint = index.data(InternalIdRole);
+    if (internalIdVaraint.isValid()) {
+        qint32 internalId = internalIdVaraint.toInt();
+        return m_view->hasModelNodeForInternalId(internalId);
+    }
+
+    return false;
+}
+
 bool NavigatorTreeModel::isInTree(const ModelNode &node) const
 {
     return m_nodeItemHash.contains(node);
diff --git a/src/plugins/qmldesigner/components/navigator/navigatortreemodel.h b/src/plugins/qmldesigner/components/navigator/navigatortreemodel.h
index 7183beefd618b4d07a2432ddd320f43643a36efa..13159b7ea5ebcef625d0d251b4abf441edaf1abe 100644
--- a/src/plugins/qmldesigner/components/navigator/navigatortreemodel.h
+++ b/src/plugins/qmldesigner/components/navigator/navigatortreemodel.h
@@ -102,6 +102,7 @@ public:
 
     QModelIndex indexForNode(const ModelNode &node) const;
     ModelNode nodeForIndex(const QModelIndex &index) const;
+    bool hasNodeForIndex(const QModelIndex &index) const;
 
     bool isInTree(const ModelNode &node) const;
     bool isNodeInvisible(const QModelIndex &index) const;