diff --git a/src/private/qprivateplugin.cpp b/src/private/plugin.cpp
similarity index 88%
rename from src/private/qprivateplugin.cpp
rename to src/private/plugin.cpp
index 1ad7ba09045d6f563979d4f09d653416860f14c4..ff6ad0a8fb3aebf20784389a4d97ac587558a5e3 100644
--- a/src/private/qprivateplugin.cpp
+++ b/src/private/plugin.cpp
@@ -39,13 +39,13 @@
 **
 ****************************************************************************/
 
-#include "qprivateplugin_p.h"
 #include "qrangemodel_p.h"
 #include "qwheelarea_p.h"
 #include "qstyleitem_p.h"
 #include "qquickcomponentsprivate_p.h"
 
 #include <qqml.h>
+#include <qqmlextensionplugin.h>
 
 QT_BEGIN_NAMESPACE
 
@@ -56,8 +56,16 @@ QObject *registerPrivateModule(QQmlEngine *engine, QJSEngine *jsEngine)
     return new QQuickComponentsPrivate();
 }
 
+class QtQuickControlsPrivatePlugin : public QQmlExtensionPlugin
+{
+    Q_OBJECT
+    Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface/1.0")
+
+public:
+    void registerTypes(const char *uri);
+};
 
-void StylePlugin::registerTypes(const char *uri)
+void QtQuickControlsPrivatePlugin::registerTypes(const char *uri)
 {
     qmlRegisterType<QRangeModel>(uri, 1, 0, "RangeModel");
     qmlRegisterType<QWheelArea>(uri, 1, 0, "WheelArea");
@@ -66,3 +74,5 @@ void StylePlugin::registerTypes(const char *uri)
 }
 
 QT_END_NAMESPACE
+
+#include "plugin.moc"
diff --git a/src/private/private.pro b/src/private/private.pro
index 74a4a8f223720b55a82f8123e0984604eae137ed..127d63289cdb3ae1232bd73b8db805e408f364bf 100644
--- a/src/private/private.pro
+++ b/src/private/private.pro
@@ -5,22 +5,18 @@ QT += qml quick widgets gui-private core-private
 
 HEADERS += \
     $$PWD/qquickcomponentsprivate_p.h \
-    $$PWD/qprivateplugin_p.h\
     $$PWD/qrangemodel_p.h \
     $$PWD/qrangemodel_p_p.h \
     $$PWD/qwheelarea_p.h \
     $$PWD/qstyleitem_p.h
 
 SOURCES += \
+    $$PWD/plugin.cpp \
     $$PWD/qquickcomponentsprivate.cpp \
-    $$PWD/qprivateplugin.cpp\
     $$PWD/qstyleitem.cpp \
     $$PWD/qrangemodel.cpp\
     $$PWD/qwheelarea.cpp
 
-OTHER_FILES += \
-    $$PWD/privateplugin.json
-
 # private qml files
 QML_FILES += \
     AbstractCheckable.qml \
diff --git a/src/private/privateplugin.json b/src/private/privateplugin.json
deleted file mode 100644
index 0967ef424bce6791893e9a57bb952f80fd536e93..0000000000000000000000000000000000000000
--- a/src/private/privateplugin.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/src/private/qprivateplugin_p.h b/src/private/qprivateplugin_p.h
deleted file mode 100644
index 3d27aa0ae624bf444a834c9325df4f3be8568ec8..0000000000000000000000000000000000000000
--- a/src/private/qprivateplugin_p.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the Qt Quick Controls module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia.  For licensing terms and
-** conditions see http://qt.digia.com/licensing.  For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file.  Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights.  These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3.0 as published by the Free Software
-** Foundation and appearing in the file LICENSE.GPL included in the
-** packaging of this file.  Please review the following information to
-** ensure the GNU General Public License version 3.0 requirements will be
-** met: http://www.gnu.org/copyleft/gpl.html.
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QSTYLEPLUGIN_P_H
-#define QSTYLEPLUGIN_P_H
-
-#include <QtQml/qqmlextensionplugin.h>
-
-QT_BEGIN_NAMESPACE
-
-class StylePlugin : public QQmlExtensionPlugin
-{
-    Q_OBJECT
-    Q_PLUGIN_METADATA(IID "org.qt-project.playground.qtquickcontrols.QQmlExtensionInterface" FILE "privateplugin.json")
-public:
-    void registerTypes(const char *uri);
-};
-
-QT_END_NAMESPACE
-
-#endif // QSTYLEPLUGIN_P_H