diff --git a/src/plugins/qmldesigner/designersettings.cpp b/src/plugins/qmldesigner/designersettings.cpp
index a88830335c88914a83930d0b3712bb680729448c..67484b62465bfec5f59d87e288a17dc6f05747eb 100644
--- a/src/plugins/qmldesigner/designersettings.cpp
+++ b/src/plugins/qmldesigner/designersettings.cpp
@@ -51,10 +51,6 @@ void DesignerSettings::fromSettings(QSettings *settings)
             QLatin1String(QmlDesigner::Constants::QML_ITEMSPACING_KEY), QVariant(0)).toInt();
     snapMargin = settings->value(
             QLatin1String(QmlDesigner::Constants::QML_SNAPMARGIN_KEY), QVariant(0)).toInt();
-    enableContextPane = settings->value(
-            QLatin1String(QmlDesigner::Constants::QML_CONTEXTPANE_KEY), QVariant(1)).toBool();    
-    pinContextPane = settings->value(
-                QLatin1String(QmlDesigner::Constants::QML_CONTEXTPANEPIN_KEY), QVariant(0)).toBool();
     settings->endGroup();
     settings->endGroup();
 }
@@ -66,8 +62,6 @@ void DesignerSettings::toSettings(QSettings *settings) const
     settings->setValue(QLatin1String(QmlDesigner::Constants::QML_OPENDESIGNMODE_SETTINGS_KEY), openDesignMode);
     settings->setValue(QLatin1String(QmlDesigner::Constants::QML_ITEMSPACING_KEY), itemSpacing);
     settings->setValue(QLatin1String(QmlDesigner::Constants::QML_SNAPMARGIN_KEY), snapMargin);
-    settings->setValue(QLatin1String(QmlDesigner::Constants::QML_CONTEXTPANE_KEY), enableContextPane);
-    settings->setValue(QLatin1String(QmlDesigner::Constants::QML_CONTEXTPANEPIN_KEY), pinContextPane);
 
     settings->endGroup();
     settings->endGroup();
@@ -77,7 +71,5 @@ bool DesignerSettings::equals(const DesignerSettings &other) const
 {
     return openDesignMode == other.openDesignMode
             && snapMargin == other.snapMargin
-            && itemSpacing == other.itemSpacing
-            && enableContextPane == other.enableContextPane
-            && pinContextPane == other.pinContextPane;
+            && itemSpacing == other.itemSpacing;
 }
diff --git a/src/plugins/qmldesigner/designersettings.h b/src/plugins/qmldesigner/designersettings.h
index 9092901a7286b03ec457dba3b30ef312b66ac6b0..5d594f1954c9a2330a18c42fbbf1c650b63f5c31 100644
--- a/src/plugins/qmldesigner/designersettings.h
+++ b/src/plugins/qmldesigner/designersettings.h
@@ -49,9 +49,7 @@ public:
     bool equals(const DesignerSettings &other) const;
     bool openDesignMode;
     int itemSpacing;
-    int snapMargin;
-    bool enableContextPane;
-    bool pinContextPane;
+    int snapMargin;    
 };
 
 inline bool operator==(const DesignerSettings &s1, const DesignerSettings &s2)
diff --git a/src/plugins/qmldesigner/qmlcontextpane.cpp b/src/plugins/qmldesigner/qmlcontextpane.cpp
index d1ca6e05563a4050603b58d24c386906a4799dfe..9ded854be3eeb16c76a1b99b01e8b8de4c2a09de 100644
--- a/src/plugins/qmldesigner/qmlcontextpane.cpp
+++ b/src/plugins/qmldesigner/qmlcontextpane.cpp
@@ -1,6 +1,7 @@
 #include "qmlcontextpane.h"
 #include <contextpanewidget.h>
 #include <qmldesignerplugin.h>
+#include <quicktoolbarsettingspage.h>
 
 #include <utils/changeset.h>
 #include <qmljs/parser/qmljsast_p.h>
@@ -14,6 +15,7 @@
 #include <qmljs/qmljsscopebuilder.h>
 #include <texteditor/basetexteditor.h>
 #include <texteditor/tabsettings.h>
+#include <coreplugin/icore.h>
 #include <colorwidget.h>
 #include <QDebug>
 
@@ -68,7 +70,7 @@ QmlContextPane::~QmlContextPane()
 
 void QmlContextPane::apply(TextEditor::BaseTextEditorEditable *editor, Document::Ptr doc, const QmlJS::Snapshot &snapshot, AST::Node *node, bool update, bool force)
 {
-    if (!Internal::BauhausPlugin::pluginInstance()->settings().enableContextPane && !force && !update) {
+    if (!QuickToolBarSettings::get().enableContextPane && !force && !update) {
         contextWidget()->hide();
         return;
     }
@@ -147,9 +149,10 @@ void QmlContextPane::apply(TextEditor::BaseTextEditorEditable *editor, Document:
             p2.setX(p1.x());
             contextWidget()->setType(prototypes);
             if (!update)
-                contextWidget()->activate(p3 , p1, p2);
+                contextWidget()->activate(p3 , p1, p2, QuickToolBarSettings::get().pinContextPane);
             else
-                contextWidget()->rePosition(p3 , p1, p2);
+                contextWidget()->rePosition(p3 , p1, p2, QuickToolBarSettings::get().pinContextPane);
+            contextWidget()->setOptions(QuickToolBarSettings::get().enableContextPane, QuickToolBarSettings::get().pinContextPane);
             contextWidget()->setPath(doc->path());
             contextWidget()->setProperties(&propertyReader); 
             m_doc = doc;
@@ -340,6 +343,21 @@ void QmlContextPane::onPropertyRemovedAndChange(const QString &remove, const QSt
 
 }
 
+void QmlContextPane::onPinnedChanged(bool b)
+{
+    QuickToolBarSettings settings = QuickToolBarSettings::get();
+    settings.pinContextPane = b;
+    settings.set();
+}
+
+void QmlContextPane::onEnabledChanged(bool b)
+{
+    QuickToolBarSettings settings = QuickToolBarSettings::get();
+    settings.pinContextPane = b;
+    settings.enableContextPane = b;
+    settings.set();
+}
+
 ContextPaneWidget* QmlContextPane::contextWidget()
 {
     if (m_widget.isNull()) { //lazily recreate widget
@@ -347,6 +365,8 @@ ContextPaneWidget* QmlContextPane::contextWidget()
         connect(m_widget.data(), SIGNAL(propertyChanged(QString,QVariant)), this, SLOT(onPropertyChanged(QString,QVariant)));
         connect(m_widget.data(), SIGNAL(removeProperty(QString)), this, SLOT(onPropertyRemoved(QString)));
         connect(m_widget.data(), SIGNAL(removeAndChangeProperty(QString,QString,QVariant, bool)), this, SLOT(onPropertyRemovedAndChange(QString,QString,QVariant, bool)));
+        connect(m_widget.data(), SIGNAL(enabledChanged(bool)), this, SLOT(onEnabledChanged(bool)));
+        connect(m_widget.data(), SIGNAL(pinnedChanged(bool)), this, SLOT(onPinnedChanged(bool)));
     }
     return m_widget.data();
 }
diff --git a/src/plugins/qmldesigner/qmlcontextpane.h b/src/plugins/qmldesigner/qmlcontextpane.h
index eac2aa85ec2a625d341f5a99cbe4bc6da9d81e95..aef1a8b9cb9fc64df41165c4dc5b7fdccd88f807 100644
--- a/src/plugins/qmldesigner/qmlcontextpane.h
+++ b/src/plugins/qmldesigner/qmlcontextpane.h
@@ -39,6 +39,9 @@ public slots:
        void onPropertyChanged(const QString &, const QVariant &);
        void onPropertyRemoved(const QString &);
        void onPropertyRemovedAndChange(const QString &, const QString &, const QVariant &, bool removeFirst = true);
+       void onPinnedChanged(bool);
+       void onEnabledChanged(bool);
+
 private:
     ContextPaneWidget* contextWidget();
     QWeakPointer<ContextPaneWidget> m_widget;
diff --git a/src/plugins/qmldesigner/qmldesigner_dependencies.pri b/src/plugins/qmldesigner/qmldesigner_dependencies.pri
index 2d0d46727557f72552e63cc45f137a0e6eb246cd..b7219a7d8e62e1036558cc49904411be6cda63fb 100644
--- a/src/plugins/qmldesigner/qmldesigner_dependencies.pri
+++ b/src/plugins/qmldesigner/qmldesigner_dependencies.pri
@@ -1,5 +1,6 @@
 include(../../libs/utils/utils.pri)
 include(../../libs/qmljs/qmljs.pri)
+include(../../libs/qmleditorwidgets/qmleditorwidgets.pri)
 include(../coreplugin/coreplugin.pri)
 include(../texteditor/texteditor.pri)
 include(../qmljseditor/qmljseditor.pri)
diff --git a/src/plugins/qmldesigner/qmldesignerplugin.cpp b/src/plugins/qmldesigner/qmldesignerplugin.cpp
index 738a3fc74990085910287f6a9caac2dbe169144c..34ca0f40203e760cf9846a6f2f5fa4aab429d2d0 100644
--- a/src/plugins/qmldesigner/qmldesignerplugin.cpp
+++ b/src/plugins/qmldesigner/qmldesignerplugin.cpp
@@ -34,8 +34,6 @@
 #include "designmodewidget.h"
 #include "settingspage.h"
 #include "designmodecontext.h"
-#include "qmlcontextpane.h"
-
 
 #include <qmljseditor/qmljseditorconstants.h>
 
@@ -145,9 +143,8 @@ bool BauhausPlugin::initialize(const QStringList & /*arguments*/, QString *error
 
     addAutoReleasedObject(new SettingsPage);
 
-    m_settings.fromSettings(core->settings());
 
-    addAutoReleasedObject(new QmlContextPane);
+    m_settings.fromSettings(core->settings());
 
     error_message->clear();
 
diff --git a/src/plugins/qmldesigner/qmldesignerplugin.pro b/src/plugins/qmldesigner/qmldesignerplugin.pro
index c3cd8518e8c9286fc4b9fe1d94d55af258cd756c..8d563ddf943c8470a4c947b7871da5471f530bd0 100644
--- a/src/plugins/qmldesigner/qmldesignerplugin.pro
+++ b/src/plugins/qmldesigner/qmldesignerplugin.pro
@@ -15,7 +15,6 @@ include(components/pluginmanager/pluginmanager.pri)
 include(components/themeloader/qts60stylethemeio.pri)
 include(components/stateseditor/stateseditor.pri)
 include(components/resources/resources.pri)
-include(components/easingpane/easingpane.pri)
 
 HEADERS += qmldesignerconstants.h \
     qmldesignerplugin.h \
@@ -24,8 +23,7 @@ HEADERS += qmldesignerconstants.h \
     designersettings.h \
     settingspage.h \
     designmodecontext.h \
-    styledoutputpaneplaceholder.h \
-    qmlcontextpane.h
+    styledoutputpaneplaceholder.h
 
 SOURCES += qmldesignerplugin.cpp \
     designmodewidget.cpp \
@@ -33,8 +31,7 @@ SOURCES += qmldesignerplugin.cpp \
     designersettings.cpp \
     settingspage.cpp \
     designmodecontext.cpp \
-    styledoutputpaneplaceholder.cpp \
-    qmlcontextpane.cpp
+    styledoutputpaneplaceholder.cpp
 
 FORMS += settingspage.ui
 
diff --git a/src/plugins/qmldesigner/settingspage.cpp b/src/plugins/qmldesigner/settingspage.cpp
index fe1253635db07a2a2c4e4cb9167703bf2d30ae0b..c0275419dd67f3526c81ecebd39b3aa1fc317034 100644
--- a/src/plugins/qmldesigner/settingspage.cpp
+++ b/src/plugins/qmldesigner/settingspage.cpp
@@ -49,8 +49,6 @@ DesignerSettings SettingsPageWidget::settings() const
     DesignerSettings ds;
     ds.itemSpacing = m_ui.spinItemSpacing->value();
     ds.snapMargin = m_ui.spinSnapMargin->value();
-    ds.enableContextPane = m_ui.textEditHelperCheckBox->isChecked();
-    ds.pinContextPane = m_ui.textEditHelperCheckBoxPin->isChecked();
     return ds;
 }
 
@@ -58,8 +56,6 @@ void SettingsPageWidget::setSettings(const DesignerSettings &s)
 {
     m_ui.spinItemSpacing->setValue(s.itemSpacing);
     m_ui.spinSnapMargin->setValue(s.snapMargin);
-    m_ui.textEditHelperCheckBox->setChecked(s.enableContextPane);
-    m_ui.textEditHelperCheckBoxPin->setChecked(s.pinContextPane);
 }
 
 QString SettingsPageWidget::searchKeywords() const
diff --git a/src/plugins/qmldesigner/settingspage.ui b/src/plugins/qmldesigner/settingspage.ui
index 880ca212d488dcb873296d17ddc97be7079e4b26..9a56b1cc3112dd552d1dee5f86eb0055db2080d7 100644
--- a/src/plugins/qmldesigner/settingspage.ui
+++ b/src/plugins/qmldesigner/settingspage.ui
@@ -99,32 +99,6 @@
     </widget>
    </item>
    <item row="1" column="0">
-    <widget class="QGroupBox" name="groupBox">
-     <property name="title">
-      <string>Quick Toolbars</string>
-     </property>
-     <layout class="QHBoxLayout" name="horizontalLayout">
-      <item>
-       <widget class="QCheckBox" name="textEditHelperCheckBox">
-        <property name="text">
-         <string>Enable Quick Toolbar</string>
-        </property>
-       </widget>
-      </item>
-      <item>
-       <widget class="QCheckBox" name="textEditHelperCheckBoxPin">
-        <property name="toolTip">
-         <string>If enabled the toolbar will remain pinned to an absolute position.</string>
-        </property>
-        <property name="text">
-         <string>Pin Quick Toolbar</string>
-        </property>
-       </widget>
-      </item>
-     </layout>
-    </widget>
-   </item>
-   <item row="2" column="0">
     <spacer name="verticalSpacer">
      <property name="orientation">
       <enum>Qt::Vertical</enum>