diff --git a/src/plugins/qmldesigner/designmodewidget.cpp b/src/plugins/qmldesigner/designmodewidget.cpp
index 57f199c3cdc08bf3fc9a0c5f874a3b6c52e87a53..63360e3317c43b5b23ea7fc17a15853b9488bdb3 100644
--- a/src/plugins/qmldesigner/designmodewidget.cpp
+++ b/src/plugins/qmldesigner/designmodewidget.cpp
@@ -94,6 +94,8 @@ const char * const SB_OPENDOCUMENTS = "OpenDocuments";
 namespace QmlDesigner {
 namespace Internal {
 
+DesignModeWidget *DesignModeWidget::s_instance = 0;
+
 DocumentWarningWidget::DocumentWarningWidget(DesignModeWidget *parent) :
         Utils::FakeToolTip(parent),
         m_errorMessage(new QLabel("Placeholder", this)),
@@ -195,6 +197,7 @@ DesignModeWidget::DesignModeWidget(QWidget *parent) :
     m_navigatorHistoryCounter(-1),
     m_keepNavigatorHistory(false)
 {
+    s_instance = this;
     m_undoAction = new QAction(tr("&Undo"), this);
     connect(m_undoAction, SIGNAL(triggered()), this, SLOT(undo()));
     m_redoAction = new QAction(tr("&Redo"), this);
@@ -228,6 +231,7 @@ DesignModeWidget::DesignModeWidget(QWidget *parent) :
 
 DesignModeWidget::~DesignModeWidget()
 {
+    s_instance = 0;
 }
 
 void DesignModeWidget::restoreDefaultView()
@@ -857,6 +861,17 @@ void DesignModeWidget::onGoForwardClicked()
     }
 }
 
+void DesignModeWidget::onCrumblePathElementClicked(const QVariant &data)
+{
+    currentDesignDocumentController()->setCrumbleBarInfo(data.value<CrumbleBarInfo>());
+}
+
+DesignModeWidget *DesignModeWidget::instance()
+{
+    return s_instance;
+}
+
+
 void DesignModeWidget::resizeEvent(QResizeEvent *event)
 {
     if (m_warningWidget)
diff --git a/src/plugins/qmldesigner/designmodewidget.h b/src/plugins/qmldesigner/designmodewidget.h
index a4ee64832431799971e0500d1a0abed04b11a4a7..8c2f80ae3caf8e46ae5084455cad682524eeafb1 100644
--- a/src/plugins/qmldesigner/designmodewidget.h
+++ b/src/plugins/qmldesigner/designmodewidget.h
@@ -133,6 +133,9 @@ public:
 
     TextEditor::ITextEditor *textEditor() const {return m_textEditor.data(); }
 
+    static DesignModeWidget *instance();
+    DesignDocumentController *currentDesignDocumentController() const {return m_currentDesignDocumentController.data(); }
+
 private slots:
     void undo();
     void redo();
@@ -166,9 +169,7 @@ protected:
     void resizeEvent(QResizeEvent *event);
 
 private:
-    DesignDocumentController *currentDesignDocumentController() const {return m_currentDesignDocumentController.data(); }
     void setCurrentDocument(DesignDocumentController *newDesignDocumentController);
-
     //QStackedWidget *m_documentWidgetStack;
     QHash<QPlainTextEdit*,QWeakPointer<DesignDocumentController> > m_documentHash;
     QWeakPointer<DesignDocumentController> m_currentDesignDocumentController;
@@ -222,6 +223,8 @@ private:
     QStringList m_navigatorHistory;
     int m_navigatorHistoryCounter;
     bool m_keepNavigatorHistory;
+
+    static DesignModeWidget *s_instance;
 };
 
 } // namespace Internal
diff --git a/src/plugins/qmldesigner/qmldesignerplugin.pro b/src/plugins/qmldesigner/qmldesignerplugin.pro
index a1959f4db7c837aaa4897672b5f17220987fd005..aeab5d58a5017353237be06177c18af78ad40db8 100644
--- a/src/plugins/qmldesigner/qmldesignerplugin.pro
+++ b/src/plugins/qmldesigner/qmldesignerplugin.pro
@@ -1,6 +1,8 @@
 TEMPLATE = lib
 TARGET = QmlDesigner
 
+INCLUDEPATH += $$PWD
+
 include(../../qtcreatorplugin.pri)
 include(../../private_headers.pri)
 include(qmldesigner_dependencies.pri)