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/qwaylandinput.cpp | |
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/qwaylandinput.cpp')
-rw-r--r-- | src/compositor/compositor_api/qwaylandinput.cpp | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/compositor/compositor_api/qwaylandinput.cpp b/src/compositor/compositor_api/qwaylandinput.cpp index 14c3221f7..de1df4965 100644 --- a/src/compositor/compositor_api/qwaylandinput.cpp +++ b/src/compositor/compositor_api/qwaylandinput.cpp @@ -45,6 +45,7 @@ #include "qwaylandcompositor.h" #include "qwlsurface_p.h" #include "qwlcompositor_p.h" +#include "qwaylandsurfaceview.h" QT_BEGIN_NAMESPACE @@ -87,10 +88,9 @@ void QWaylandInputDevice::sendMouseMoveEvent(const QPointF &localPos, const QPoi /** Convenience function that will set the mouse focus to the surface, then send the mouse move event. * If the mouse focus is the same surface as the surface passed in, then only the move event is sent **/ -void QWaylandInputDevice::sendMouseMoveEvent(QWaylandSurface *surface, const QPointF &localPos, const QPointF &globalPos) +void QWaylandInputDevice::sendMouseMoveEvent(QWaylandSurfaceView *surface, const QPointF &localPos, const QPointF &globalPos) { - QtWayland::Surface *wlsurface = surface? surface->handle():0; - d->sendMouseMoveEvent(wlsurface,localPos,globalPos); + d->sendMouseMoveEvent(surface,localPos,globalPos); } void QWaylandInputDevice::sendMouseWheelEvent(Qt::Orientation orientation, int delta) @@ -158,18 +158,14 @@ void QWaylandInputDevice::setKeymap(const QWaylandKeymap &keymap) handle()->keyboardDevice()->setKeymap(keymap); } -QWaylandSurface *QWaylandInputDevice::mouseFocus() const +QWaylandSurfaceView *QWaylandInputDevice::mouseFocus() const { - QtWayland::Surface *wlsurface = d->mouseFocus(); - if (wlsurface) - return wlsurface->waylandSurface(); - return 0; + return d->mouseFocus(); } -void QWaylandInputDevice::setMouseFocus(QWaylandSurface *surface, const QPointF &localPos, const QPointF &globalPos) +void QWaylandInputDevice::setMouseFocus(QWaylandSurfaceView *surface, const QPointF &localPos, const QPointF &globalPos) { - QtWayland::Surface *wlsurface = surface?surface->handle():0; - d->setMouseFocus(wlsurface,localPos,globalPos); + d->setMouseFocus(surface,localPos,globalPos); } QWaylandCompositor *QWaylandInputDevice::compositor() const |