diff options
author | Giulio Camuffo <giulio.camuffo@jollamobile.com> | 2014-03-31 17:18:43 +0300 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-04-29 11:17:45 +0200 |
commit | bb37532f36862eb29e033508d1c6c5dbc8c2be13 (patch) | |
tree | fa9d2e8300bf07f07e2c49b35e1bb936fbe8bc90 /src/compositor/compositor_api/qwaylandcompositor.h | |
parent | 96ab8abe0b0faea7f63f0477025fe0649e410362 (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.h | 7 |
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); |