diff --git a/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.cpp b/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.cpp
index 1480471785db97b5cc149c97ca416080e195f480..0d02d4bb98eff06703c909c759203de0e9d4c9a2 100644
--- a/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.cpp
+++ b/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.cpp
@@ -32,14 +32,24 @@
 #include <QtCore/QtPlugin>
 #include <private/qdeclarativerectangle_p.h>
 #include <private/qdeclarativescalegrid_p_p.h>
+#include <MComponentData>
 
 namespace QmlDesigner {
 
 
 QtQuickPlugin::QtQuickPlugin()
 {
-    qmlRegisterType<QDeclarativePen>("QtQuick", 1, 0, "Pen");
-    qmlRegisterType<QDeclarativeScaleGrid>("QtQuick", 1, 0, "ScaleGrid");
+    qApp->setProperty("NoMStyle", true);
+    if(!MComponentData::instance()) {
+        // This is a workaround because we can't use a default
+        // constructor for MComponentData
+        int argc = 1;
+        char *argv0 = "meegotouch";
+        (void) new MComponentData(argc, &argv0);
+    }
+
+    qmlRegisterType<QDeclarativePen>("Qt", 4, 7, "Pen");
+    qmlRegisterType<QDeclarativeScaleGrid>("Qt", 4, 7, "ScaleGrid");
 }
 
 QString QtQuickPlugin::pluginName()
diff --git a/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.pri b/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.pri
index 5870c378726e037e33d988179f9806fabd8f3660..1436a03d1ebba658f6a2f8dd0fda1751020fca3f 100644
--- a/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.pri
+++ b/src/plugins/qmldesigner/qtquickplugin/qtquickplugin.pri
@@ -1,6 +1,6 @@
 TARGET = qtquickplugin
 TEMPLATE = lib
-CONFIG += plugin
+CONFIG += plugin meegotouch
 
 QT += script \
       declarative