summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandcompositor.h
diff options
context:
space:
mode:
authorGiulio Camuffo <giulio.camuffo@jollamobile.com>2014-03-31 17:18:43 +0300
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-29 11:17:45 +0200
commitbb37532f36862eb29e033508d1c6c5dbc8c2be13 (patch)
treefa9d2e8300bf07f07e2c49b35e1bb936fbe8bc90 /src/compositor/compositor_api/qwaylandcompositor.h
parent96ab8abe0b0faea7f63f0477025fe0649e410362 (diff)
Split QWaylandSurface in a model and view fashion
QtQuick compositors already use a view class (QWaylandSurfaceItem), so add a new QWaylandSurfaceView, which is subclassed by QWaylandSurfaceItem, and move the view related methods of QWaylandSurface there. A QWaylandSurface can have many views. Change-Id: I7e92fe1f7e9d252f5f40a3097feabb5f3318b03a Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Diffstat (limited to 'src/compositor/compositor_api/qwaylandcompositor.h')
-rw-r--r--src/compositor/compositor_api/qwaylandcompositor.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/compositor/compositor_api/qwaylandcompositor.h b/src/compositor/compositor_api/qwaylandcompositor.h
index 85f10b281..732d6821d 100644
--- a/src/compositor/compositor_api/qwaylandcompositor.h
+++ b/src/compositor/compositor_api/qwaylandcompositor.h
@@ -56,6 +56,7 @@ class QWaylandSurface;
class QWaylandInputDevice;
class QWaylandInputPanel;
class QWaylandDrag;
+class QWaylandSurfaceView;
namespace QtWayland
{
@@ -98,8 +99,8 @@ public:
virtual void surfaceCreated(QWaylandSurface *surface) = 0;
virtual void surfaceAboutToBeDestroyed(QWaylandSurface *surface);
- virtual QWaylandSurface *pickSurface(const QPointF &globalPosition) const;
- virtual QPointF mapToSurface(QWaylandSurface *surface, const QPointF &surfacePosition) const;
+ virtual QWaylandSurfaceView *pickView(const QPointF &globalPosition) const;
+ virtual QPointF mapToView(QWaylandSurfaceView *view, const QPointF &surfacePosition) const;
virtual void openUrl(WaylandClient *client, const QUrl &url);
@@ -140,6 +141,8 @@ public:
Q_DECLARE_FLAGS(TouchExtensionFlags, TouchExtensionFlag)
void configureTouchExtension(TouchExtensionFlags flags);
+ virtual QWaylandSurfaceView *createView(QWaylandSurface *surface);
+
protected:
QWaylandCompositor(QWindow *window, const char *socketName, QtWayland::Compositor *dptr);
virtual void retainedSelectionReceived(QMimeData *mimeData);