diff --git a/src/client/client.pro b/src/client/client.pro
index 6aaa254198076f4ea2429da30fcae592c5d568c4..ed14a460e0d4b7e38e13cc5d582f547e24b26ed4 100644
--- a/src/client/client.pro
+++ b/src/client/client.pro
@@ -69,7 +69,7 @@ SOURCES +=  qwaylandintegration.cpp \
             qwaylandtouch.cpp \
             qwaylandqtkey.cpp \
             ../shared/qwaylandmimehelper.cpp \
-            qwaylanddecoration.cpp \
+            qwaylandabstractdecoration.cpp \
             qwaylandeventthread.cpp\
             qwaylandwindowmanagerintegration.cpp \
             qwaylandinputcontext.cpp \
@@ -100,7 +100,7 @@ HEADERS +=  qwaylandintegration_p.h \
             qwaylandtouch_p.h \
             qwaylandqtkey_p.h \
             ../shared/qwaylandmimehelper.h \
-            qwaylanddecoration_p.h \
+            qwaylandabstractdecoration_p.h \
             qwaylandeventthread_p.h \
             qwaylandwindowmanagerintegration_p.h \
             qwaylandinputcontext_p.h \
diff --git a/src/client/qwaylanddecoration.cpp b/src/client/qwaylandabstractdecoration.cpp
similarity index 87%
rename from src/client/qwaylanddecoration.cpp
rename to src/client/qwaylandabstractdecoration.cpp
index ed4978725a40ceddcfc3d7133b4c836d115bdc0b..2781b42616c96bb2c5853cdb2321edcf57c1bcb9 100644
--- a/src/client/qwaylanddecoration.cpp
+++ b/src/client/qwaylandabstractdecoration.cpp
@@ -39,7 +39,7 @@
 **
 ****************************************************************************/
 
-#include "qwaylanddecoration_p.h"
+#include "qwaylandabstractdecoration_p.h"
 
 #include "qwaylandwindow_p.h"
 #include "qwaylandshellsurface_p.h"
@@ -123,7 +123,7 @@ static const char * const qt_normalizeup_xpm[] = {
 #  define BUTTON_WIDTH 22
 #endif
 
-QWaylandDecoration::QWaylandDecoration(QWaylandWindow *window)
+QWaylandAbstractDecoration::QWaylandAbstractDecoration(QWaylandWindow *window)
     : m_window(window->window())
     , m_wayland_window(window)
     , m_isDirty(true)
@@ -142,12 +142,12 @@ QWaylandDecoration::QWaylandDecoration(QWaylandWindow *window)
     m_windowTitle.setTextOption(option);
 }
 
-QWaylandDecoration::~QWaylandDecoration()
+QWaylandAbstractDecoration::~QWaylandAbstractDecoration()
 {
     m_wayland_window->setDecoration(0);
 }
 
-const QImage &QWaylandDecoration::contentImage()
+const QImage &QWaylandAbstractDecoration::contentImage()
 {
     if (m_isDirty) {
         //Update the decoration backingstore
@@ -162,12 +162,12 @@ const QImage &QWaylandDecoration::contentImage()
     return m_decorationContentImage;
 }
 
-void QWaylandDecoration::update()
+void QWaylandAbstractDecoration::update()
 {
     m_isDirty = true;
 }
 
-void QWaylandDecoration::paint(QPaintDevice *device)
+void QWaylandAbstractDecoration::paint(QPaintDevice *device)
 {
     QRect surfaceRect(QPoint(), window()->frameGeometry().size());
     QRect clips[] =
@@ -305,7 +305,7 @@ void QWaylandDecoration::paint(QPaintDevice *device)
 #endif
 }
 
-bool QWaylandDecoration::handleMouse(QWaylandInputDevice *inputDevice, const QPointF &local, const QPointF &global, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
+bool QWaylandAbstractDecoration::handleMouse(QWaylandInputDevice *inputDevice, const QPointF &local, const QPointF &global, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
 
 {
     Q_UNUSED(global);
@@ -335,7 +335,7 @@ bool QWaylandDecoration::handleMouse(QWaylandInputDevice *inputDevice, const QPo
     return true;
 }
 
-bool QWaylandDecoration::handleTouch(QWaylandInputDevice *inputDevice, const QPointF &local, const QPointF &global, Qt::TouchPointState state, Qt::KeyboardModifiers mods)
+bool QWaylandAbstractDecoration::handleTouch(QWaylandInputDevice *inputDevice, const QPointF &local, const QPointF &global, Qt::TouchPointState state, Qt::KeyboardModifiers mods)
 {
     Q_UNUSED(inputDevice);
     Q_UNUSED(global);
@@ -357,12 +357,12 @@ bool QWaylandDecoration::handleTouch(QWaylandInputDevice *inputDevice, const QPo
     return handled;
 }
 
-bool QWaylandDecoration::inMouseButtonPressedState() const
+bool QWaylandAbstractDecoration::inMouseButtonPressedState() const
 {
     return m_mouseButtons & Qt::NoButton;
 }
 
-void QWaylandDecoration::startResize(QWaylandInputDevice *inputDevice, enum wl_shell_surface_resize resize, Qt::MouseButtons buttons)
+void QWaylandAbstractDecoration::startResize(QWaylandInputDevice *inputDevice, enum wl_shell_surface_resize resize, Qt::MouseButtons buttons)
 {
     if (isLeftClicked(buttons)) {
         m_wayland_window->shellSurface()->resize(inputDevice, resize);
@@ -370,7 +370,7 @@ void QWaylandDecoration::startResize(QWaylandInputDevice *inputDevice, enum wl_s
     }
 }
 
-void QWaylandDecoration::startMove(QWaylandInputDevice *inputDevice, Qt::MouseButtons buttons)
+void QWaylandAbstractDecoration::startMove(QWaylandInputDevice *inputDevice, Qt::MouseButtons buttons)
 {
     if (isLeftClicked(buttons)) {
         m_wayland_window->shellSurface()->move(inputDevice);
@@ -378,7 +378,7 @@ void QWaylandDecoration::startMove(QWaylandInputDevice *inputDevice, Qt::MouseBu
     }
 }
 
-void QWaylandDecoration::processMouseTop(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
+void QWaylandAbstractDecoration::processMouseTop(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
 {
     Q_UNUSED(mods);
     if (local.y() <= m_margins.bottom()) {
@@ -402,7 +402,7 @@ void QWaylandDecoration::processMouseTop(QWaylandInputDevice *inputDevice, const
 
 }
 
-void QWaylandDecoration::processMouseBottom(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
+void QWaylandAbstractDecoration::processMouseBottom(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
 {
     Q_UNUSED(mods);
     if (local.x() <= margins().left()) {
@@ -420,7 +420,7 @@ void QWaylandDecoration::processMouseBottom(QWaylandInputDevice *inputDevice, co
     }
 }
 
-void QWaylandDecoration::processMouseLeft(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
+void QWaylandAbstractDecoration::processMouseLeft(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
 {
     Q_UNUSED(local);
     Q_UNUSED(mods);
@@ -428,7 +428,7 @@ void QWaylandDecoration::processMouseLeft(QWaylandInputDevice *inputDevice, cons
     startResize(inputDevice,WL_SHELL_SURFACE_RESIZE_LEFT,b);
 }
 
-void QWaylandDecoration::processMouseRight(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
+void QWaylandAbstractDecoration::processMouseRight(QWaylandInputDevice *inputDevice, const QPointF &local, Qt::MouseButtons b, Qt::KeyboardModifiers mods)
 {
     Q_UNUSED(local);
     Q_UNUSED(mods);
@@ -436,33 +436,33 @@ void QWaylandDecoration::processMouseRight(QWaylandInputDevice *inputDevice, con
     startResize(inputDevice, WL_SHELL_SURFACE_RESIZE_RIGHT,b);
 }
 
-bool QWaylandDecoration::isLeftClicked(Qt::MouseButtons newMouseButtonState)
+bool QWaylandAbstractDecoration::isLeftClicked(Qt::MouseButtons newMouseButtonState)
 {
     if ((!m_mouseButtons & Qt::LeftButton) && (newMouseButtonState & Qt::LeftButton))
         return true;
     return false;
 }
 
-bool QWaylandDecoration::isLeftReleased(Qt::MouseButtons newMouseButtonState)
+bool QWaylandAbstractDecoration::isLeftReleased(Qt::MouseButtons newMouseButtonState)
 {
     if ((m_mouseButtons & Qt::LeftButton) && !(newMouseButtonState & Qt::LeftButton))
         return true;
     return false;
 }
 
-QRectF QWaylandDecoration::closeButtonRect() const
+QRectF QWaylandAbstractDecoration::closeButtonRect() const
 {
     return QRectF(window()->frameGeometry().width() - BUTTON_WIDTH - BUTTON_SPACING * 2,
                   (m_margins.top() - BUTTON_WIDTH) / 2, BUTTON_WIDTH, BUTTON_WIDTH);
 }
 
-QRectF QWaylandDecoration::maximizeButtonRect() const
+QRectF QWaylandAbstractDecoration::maximizeButtonRect() const
 {
     return QRectF(window()->frameGeometry().width() - BUTTON_WIDTH * 2 - BUTTON_SPACING * 3,
                   (m_margins.top() - BUTTON_WIDTH) / 2, BUTTON_WIDTH, BUTTON_WIDTH);
 }
 
-QRectF QWaylandDecoration::minimizeButtonRect() const
+QRectF QWaylandAbstractDecoration::minimizeButtonRect() const
 {
     return QRectF(window()->frameGeometry().width() - BUTTON_WIDTH * 3 - BUTTON_SPACING * 4,
                   (m_margins.top() - BUTTON_WIDTH) / 2, BUTTON_WIDTH, BUTTON_WIDTH);
diff --git a/src/client/qwaylanddecoration_p.h b/src/client/qwaylandabstractdecoration_p.h
similarity index 89%
rename from src/client/qwaylanddecoration_p.h
rename to src/client/qwaylandabstractdecoration_p.h
index c240b9c9d45aae6afd7cf16cc43258cb0a487e72..c94c9951acdf983d03a64da24e469a4fee1af23c 100644
--- a/src/client/qwaylanddecoration_p.h
+++ b/src/client/qwaylandabstractdecoration_p.h
@@ -39,8 +39,8 @@
 **
 ****************************************************************************/
 
-#ifndef QWAYLANDDECORATION_H
-#define QWAYLANDDECORATION_H
+#ifndef QWAYLANDABSTRACTDECORATION_H
+#define QWAYLANDABSTRACTDECORATION_H
 
 #include <QtCore/QMargins>
 #include <QtCore/QPointF>
@@ -65,11 +65,11 @@ class QWaylandScreen;
 class QWaylandWindow;
 class QWaylandInputDevice;
 
-class Q_WAYLAND_CLIENT_EXPORT QWaylandDecoration
+class Q_WAYLAND_CLIENT_EXPORT QWaylandAbstractDecoration
 {
 public:
-    QWaylandDecoration(QWaylandWindow *window);
-    virtual ~QWaylandDecoration();
+    QWaylandAbstractDecoration(QWaylandWindow *window);
+    virtual ~QWaylandAbstractDecoration();
 
     void update();
     bool isDirty() const;
@@ -115,26 +115,26 @@ private:
     QStaticText m_windowTitle;
 };
 
-inline bool QWaylandDecoration::isDirty() const
+inline bool QWaylandAbstractDecoration::isDirty() const
 {
     return m_isDirty;
 }
 
-inline QMargins QWaylandDecoration::margins() const
+inline QMargins QWaylandAbstractDecoration::margins() const
 {
     return m_margins;
 }
 
-inline QWindow *QWaylandDecoration::window() const
+inline QWindow *QWaylandAbstractDecoration::window() const
 {
     return m_window;
 }
 
-inline QWaylandWindow *QWaylandDecoration::waylandWindow() const
+inline QWaylandWindow *QWaylandAbstractDecoration::waylandWindow() const
 {
     return m_wayland_window;
 }
 
 QT_END_NAMESPACE
 
-#endif // QWAYLANDDECORATION_H
+#endif // QWAYLANDABSTRACTDECORATION_H
diff --git a/src/client/qwaylandshmbackingstore.cpp b/src/client/qwaylandshmbackingstore.cpp
index 14e1285d37b29a07f67b4f7d46ff414faa7eead1..421fae91c6b6089513a56173d75adb1b59975a60 100644
--- a/src/client/qwaylandshmbackingstore.cpp
+++ b/src/client/qwaylandshmbackingstore.cpp
@@ -42,7 +42,7 @@
 #include "qwaylandwindow_p.h"
 #include "qwaylanddisplay_p.h"
 #include "qwaylandscreen_p.h"
-#include "qwaylanddecoration_p.h"
+#include "qwaylandabstractdecoration_p.h"
 
 #include <QtCore/qdebug.h>
 #include <QtGui/QPainter>
@@ -295,7 +295,7 @@ void QWaylandShmBackingStore::updateDecorations()
     decorationPainter.drawImage(target, sourceImage, target);
 }
 
-QWaylandDecoration *QWaylandShmBackingStore::windowDecoration() const
+QWaylandAbstractDecoration *QWaylandShmBackingStore::windowDecoration() const
 {
     return waylandWindow()->decoration();
 }
diff --git a/src/client/qwaylandshmbackingstore_p.h b/src/client/qwaylandshmbackingstore_p.h
index 33f363f6873efe08c2afa2de6ba47c9c5569e5ae..5c3dbb5bc27295ca371f2d5a725eb31ed34c5846 100644
--- a/src/client/qwaylandshmbackingstore_p.h
+++ b/src/client/qwaylandshmbackingstore_p.h
@@ -51,7 +51,7 @@
 QT_BEGIN_NAMESPACE
 
 class QWaylandDisplay;
-class QWaylandDecoration;
+class QWaylandAbstractDecoration;
 class QWaylandWindow;
 
 class Q_WAYLAND_CLIENT_EXPORT QWaylandShmBuffer : public QWaylandBuffer {
@@ -83,7 +83,7 @@ public:
     void beginPaint(const QRegion &);
     void endPaint();
 
-    QWaylandDecoration *windowDecoration() const;
+    QWaylandAbstractDecoration *windowDecoration() const;
 
     QMargins windowDecorationMargins() const;
     QImage *entireSurface() const;
diff --git a/src/client/qwaylandwindow.cpp b/src/client/qwaylandwindow.cpp
index aaef58d997a4c07bf60e9a6444e3f1ee09d09bdb..c900b98db6cc61b95240b6349b9be7447d085cd0 100644
--- a/src/client/qwaylandwindow.cpp
+++ b/src/client/qwaylandwindow.cpp
@@ -50,7 +50,7 @@
 #include "qwaylandwlshellsurface_p.h"
 #include "qwaylandxdgsurface_p.h"
 #include "qwaylandsubsurface_p.h"
-#include "qwaylanddecoration_p.h"
+#include "qwaylandabstractdecoration_p.h"
 #include "qwaylandwindowmanagerintegration_p.h"
 #include "qwaylandnativeinterface_p.h"
 
@@ -505,7 +505,7 @@ bool QWaylandWindow::createDecoration()
 
     if (decoration) {
         if (!mWindowDecoration)
-            mWindowDecoration = new QWaylandDecoration(this);
+            mWindowDecoration = new QWaylandAbstractDecoration(this);
     } else {
         delete mWindowDecoration;
         mWindowDecoration = 0;
@@ -514,12 +514,12 @@ bool QWaylandWindow::createDecoration()
     return mWindowDecoration;
 }
 
-QWaylandDecoration *QWaylandWindow::decoration() const
+QWaylandAbstractDecoration *QWaylandWindow::decoration() const
 {
     return mWindowDecoration;
 }
 
-void QWaylandWindow::setDecoration(QWaylandDecoration *decoration)
+void QWaylandWindow::setDecoration(QWaylandAbstractDecoration *decoration)
 {
     mWindowDecoration = decoration;
     if (subSurfaceWindow()) {
diff --git a/src/client/qwaylandwindow_p.h b/src/client/qwaylandwindow_p.h
index dbb0af2e0aa6791f72054e1c204a41ed5861b146..c2df0937cd103ae008a3b7384c9651f4d3724c00 100644
--- a/src/client/qwaylandwindow_p.h
+++ b/src/client/qwaylandwindow_p.h
@@ -60,7 +60,7 @@ class QWaylandDisplay;
 class QWaylandBuffer;
 class QWaylandShellSurface;
 class QWaylandSubSurface;
-class QWaylandDecoration;
+class QWaylandAbstractDecoration;
 class QWaylandInputDevice;
 class QWaylandScreen;
 class QWaylandShmBackingStore;
@@ -144,8 +144,8 @@ public:
     bool isExposed() const Q_DECL_OVERRIDE;
     void unfocus();
 
-    QWaylandDecoration *decoration() const;
-    void setDecoration(QWaylandDecoration *decoration);
+    QWaylandAbstractDecoration *decoration() const;
+    void setDecoration(QWaylandAbstractDecoration *decoration);
 
 
     void handleMouse(QWaylandInputDevice *inputDevice,
@@ -199,7 +199,7 @@ protected:
     QWaylandShellSurface *mShellSurface;
     QWaylandSubSurface *mSubSurfaceWindow;
 
-    QWaylandDecoration *mWindowDecoration;
+    QWaylandAbstractDecoration *mWindowDecoration;
     bool mMouseEventsInContentArea;
     Qt::MouseButtons mMousePressedInContentArea;
     Qt::CursorShape m_cursorShape;
diff --git a/src/client/qwaylandwlshellsurface.cpp b/src/client/qwaylandwlshellsurface.cpp
index a8e89ec98c2d1c01c11aee17d499297cd9230327..86115fa38b2fa72a51aa35f7c56774f997a2f89a 100644
--- a/src/client/qwaylandwlshellsurface.cpp
+++ b/src/client/qwaylandwlshellsurface.cpp
@@ -44,7 +44,7 @@
 #include "qwaylanddisplay_p.h"
 #include "qwaylandwindow_p.h"
 #include "qwaylandinputdevice_p.h"
-#include "qwaylanddecoration_p.h"
+#include "qwaylandabstractdecoration_p.h"
 #include "qwaylandscreen_p.h"
 #include "qwaylandextendedsurface_p.h"
 
diff --git a/src/client/qwaylandxdgshell.cpp b/src/client/qwaylandxdgshell.cpp
index 8a96a0304b73855f561465ab050c437e9d79fb9e..f31d63f42662415756a57006750f6db4d04e2890 100644
--- a/src/client/qwaylandxdgshell.cpp
+++ b/src/client/qwaylandxdgshell.cpp
@@ -44,7 +44,6 @@
 #include "qwaylanddisplay_p.h"
 #include "qwaylandwindow_p.h"
 #include "qwaylandinputdevice_p.h"
-#include "qwaylanddecoration_p.h"
 #include "qwaylandscreen_p.h"
 
 #include <QtCore/QDebug>
diff --git a/src/client/qwaylandxdgsurface.cpp b/src/client/qwaylandxdgsurface.cpp
index 126c9db72b3bfee552b8ab754571cd06d98d0201..318ff86d9445352a79a746355fd7c2eac84b0332 100644
--- a/src/client/qwaylandxdgsurface.cpp
+++ b/src/client/qwaylandxdgsurface.cpp
@@ -44,7 +44,7 @@
 #include "qwaylanddisplay_p.h"
 #include "qwaylandwindow_p.h"
 #include "qwaylandinputdevice_p.h"
-#include "qwaylanddecoration_p.h"
+#include "qwaylandabstractdecoration_p.h"
 #include "qwaylandscreen_p.h"
 #include "qwaylandextendedsurface_p.h"
 
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
index b2db1ad0cd941b47f08f3dcc4b932f0b722a9ba5..aac5a3685498ecdae83a59c8679dee4b67b84634 100644
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.cpp
@@ -43,7 +43,7 @@
 
 #include <QtWaylandClient/private/qwaylanddisplay_p.h>
 #include <QtWaylandClient/private/qwaylandwindow_p.h>
-#include <QtWaylandClient/private/qwaylanddecoration_p.h>
+#include <QtWaylandClient/private/qwaylandabstractdecoration_p.h>
 #include <QtWaylandClient/private/qwaylandintegration_p.h>
 #include "qwaylandeglwindow.h"