summaryrefslogtreecommitdiffstats
path: root/src/compositor/extensions/qwlextendedsurface.cpp
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@theqtcompany.com>2015-05-08 14:55:14 +0200
committerJørgen Lind <jorgen.lind@theqtcompany.com>2015-08-28 13:09:42 +0200
commitd1359f8b0c2b8fcffc2112d2e29d530ac1ab7c9a (patch)
tree0f7fdee380c657914065230d522f91a89563088e /src/compositor/extensions/qwlextendedsurface.cpp
parent85b1d4e6524504321fa769457eea5fb3b7e62e7e (diff)
Improve QWaylandExtension
By using curiously recurring template pattern we can generate a getter which is very convenient, and all QWaylandExtensions should have this casting operation Change-Id: Idb5a786655f2e106cf5388b11ed71e8b6ddddec0
Diffstat (limited to 'src/compositor/extensions/qwlextendedsurface.cpp')
-rw-r--r--src/compositor/extensions/qwlextendedsurface.cpp9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/compositor/extensions/qwlextendedsurface.cpp b/src/compositor/extensions/qwlextendedsurface.cpp
index 42c100531..c9aae421a 100644
--- a/src/compositor/extensions/qwlextendedsurface.cpp
+++ b/src/compositor/extensions/qwlextendedsurface.cpp
@@ -44,7 +44,7 @@ QT_BEGIN_NAMESPACE
namespace QtWayland {
SurfaceExtensionGlobal::SurfaceExtensionGlobal(Compositor *compositor)
- : QWaylandExtension(compositor->waylandCompositor())
+ : QWaylandExtensionTemplate(compositor->waylandCompositor())
, QtWaylandServer::qt_surface_extension(compositor->wl_display(), 1)
{
}
@@ -57,13 +57,8 @@ void SurfaceExtensionGlobal::surface_extension_get_extended_surface(Resource *re
new ExtendedSurface(resource->client(),id, wl_resource_get_version(resource->handle), surface);
}
-ExtendedSurface *ExtendedSurface::get(QWaylandSurface *surface)
-{
- return static_cast<ExtendedSurface *>(surface->extension(qt_extended_surface::name()));
-}
-
ExtendedSurface::ExtendedSurface(struct wl_client *client, uint32_t id, int version, Surface *surface)
- : QWaylandExtension(surface->waylandSurface())
+ : QWaylandExtensionTemplate(surface->waylandSurface())
, QtWaylandServer::qt_extended_surface(client, id, version)
, m_surface(surface)
, m_windowFlags(0)