summaryrefslogtreecommitdiffstats
path: root/src/compositor/wayland_wrapper
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@theqtcompany.com>2015-07-29 14:34:49 +0200
committerJørgen Lind <jorgen.lind@theqtcompany.com>2015-08-28 13:09:41 +0200
commit6181c91c9718532ac0ccf1566c10953d6a6c69d7 (patch)
treebaa5884e7d990e22601f3b14b2d715d7faa6c4fd /src/compositor/wayland_wrapper
parent71ddf5f5b8611463d4ab824219b9dfa41c45c616 (diff)
Make it possible for QWaylandSurfaceItem to children of arbitrary items
The main problem is that the position of the QWaylandSurfaceItem is changed through the position of the views setPos function. However, it might be that we don't want the surface position to map it directly. Rename QWaylandSurfaceView::setPos to setRequestedPos Then let the compositors choose what to do with this position Change-Id: I43c74baad688d2f3e49ca091bbf436c718e81318
Diffstat (limited to 'src/compositor/wayland_wrapper')
-rw-r--r--src/compositor/wayland_wrapper/qwldatadevice.cpp2
-rw-r--r--src/compositor/wayland_wrapper/qwlinputdevice.cpp2
-rw-r--r--src/compositor/wayland_wrapper/qwlqttouch.cpp2
-rw-r--r--src/compositor/wayland_wrapper/qwlshellsurface.cpp20
-rw-r--r--src/compositor/wayland_wrapper/qwlsubsurface.cpp2
5 files changed, 14 insertions, 14 deletions
diff --git a/src/compositor/wayland_wrapper/qwldatadevice.cpp b/src/compositor/wayland_wrapper/qwldatadevice.cpp
index 8c28dfeb7..2e694ca27 100644
--- a/src/compositor/wayland_wrapper/qwldatadevice.cpp
+++ b/src/compositor/wayland_wrapper/qwldatadevice.cpp
@@ -140,7 +140,7 @@ void DataDevice::focus()
void DataDevice::motion(uint32_t time)
{
if (m_dragIcon) {
- m_dragIcon->setPos(m_pointer->currentPosition());
+ m_dragIcon->setRequestedPosition(m_pointer->currentPosition());
}
if (m_dragFocusResource && m_dragFocus) {
diff --git a/src/compositor/wayland_wrapper/qwlinputdevice.cpp b/src/compositor/wayland_wrapper/qwlinputdevice.cpp
index 479df4d56..13bbdf872 100644
--- a/src/compositor/wayland_wrapper/qwlinputdevice.cpp
+++ b/src/compositor/wayland_wrapper/qwlinputdevice.cpp
@@ -276,7 +276,7 @@ void InputDevice::sendFullTouchEvent(QTouchEvent *event)
return;
const int pointCount = points.count();
- QPointF pos = mouseFocus()->pos();
+ QPointF pos = mouseFocus()->requestedPosition();
for (int i = 0; i < pointCount; ++i) {
const QTouchEvent::TouchPoint &tp(points.at(i));
// Convert the local pos in the compositor window to surface-relative.
diff --git a/src/compositor/wayland_wrapper/qwlqttouch.cpp b/src/compositor/wayland_wrapper/qwlqttouch.cpp
index aa9492428..b99ff776b 100644
--- a/src/compositor/wayland_wrapper/qwlqttouch.cpp
+++ b/src/compositor/wayland_wrapper/qwlqttouch.cpp
@@ -71,7 +71,7 @@ bool TouchExtensionGlobal::postTouchEvent(QTouchEvent *event, QWaylandSurfaceVie
if (!pointCount)
return false;
- QPointF surfacePos = view->pos();
+ QPointF surfacePos = view->requestedPosition();
wl_client *surfaceClient = view->surface()->handle()->resource()->client();
uint32_t time = m_compositor->currentTimeMsecs();
const int rescount = m_resources.count();
diff --git a/src/compositor/wayland_wrapper/qwlshellsurface.cpp b/src/compositor/wayland_wrapper/qwlshellsurface.cpp
index 59301d795..efa211013 100644
--- a/src/compositor/wayland_wrapper/qwlshellsurface.cpp
+++ b/src/compositor/wayland_wrapper/qwlshellsurface.cpp
@@ -127,14 +127,14 @@ void ShellSurface::adjustPosInResize()
int bottomLeftX = m_resizeGrabber->point.x() + m_resizeGrabber->width;
int bottomLeftY = m_resizeGrabber->point.y() + m_resizeGrabber->height;
- qreal x = m_view->pos().x();
- qreal y = m_view->pos().y();
+ qreal x = m_view->requestedPosition().x();
+ qreal y = m_view->requestedPosition().y();
if (m_resizeGrabber->resize_edges & WL_SHELL_SURFACE_RESIZE_TOP)
y = bottomLeftY - m_view->surface()->size().height();
if (m_resizeGrabber->resize_edges & WL_SHELL_SURFACE_RESIZE_LEFT)
x = bottomLeftX - m_view->surface()->size().width();
QPointF newPos(x,y);
- m_view->setPos(newPos);
+ m_view->setRequestedPosition(newPos);
}
void ShellSurface::resetResizeGrabber()
@@ -187,8 +187,8 @@ void ShellSurface::mapped()
void ShellSurface::adjustOffset(const QPoint &p)
{
QPointF offset(p);
- QPointF pos = m_view->pos();
- m_view->setPos(pos + offset);
+ QPointF pos = m_view->requestedPosition();
+ m_view->setRequestedPosition(pos + offset);
}
void ShellSurface::requestSize(const QSize &size)
@@ -219,7 +219,7 @@ void ShellSurface::shell_surface_move(Resource *resource,
InputDevice *input_device = InputDevice::fromSeatResource(input_device_super);
Pointer *pointer = input_device->pointerDevice();
- m_moveGrabber = new ShellSurfaceMoveGrabber(this, pointer->position() - m_view->pos());
+ m_moveGrabber = new ShellSurfaceMoveGrabber(this, pointer->position() - m_view->requestedPosition());
pointer->startGrab(m_moveGrabber);
}
@@ -309,7 +309,7 @@ void ShellSurface::shell_surface_set_fullscreen(Resource *resource,
}
QSize outputSize = output->geometry().size();
- m_view->setPos(output->geometry().topLeft());
+ m_view->setRequestedPosition(output->geometry().topLeft());
send_configure(resize_bottom_right, outputSize.width(), outputSize.height());
m_surface->setVisibility(QWindow::FullScreen);
@@ -357,7 +357,7 @@ void ShellSurface::shell_surface_set_maximized(Resource *resource,
}
QSize outputSize = output->availableGeometry().size();
- m_view->setPos(output->availableGeometry().topLeft());
+ m_view->setRequestedPosition(output->availableGeometry().topLeft());
send_configure(resize_bottom_right, outputSize.width(), outputSize.height());
m_surface->setVisibility(QWindow::Maximized);
@@ -454,11 +454,11 @@ void ShellSurfaceMoveGrabber::motion(uint32_t time)
Q_UNUSED(time);
QPointF pos(m_pointer->position() - m_offset);
- shell_surface->m_view->setPos(pos);
+ shell_surface->m_view->setRequestedPosition(pos);
if (shell_surface->m_surface->transientParent()) {
QWaylandSurfaceView *view = shell_surface->m_surface->transientParent()->waylandSurface()->views().first();
if (view)
- shell_surface->setOffset(pos - view->pos());
+ shell_surface->setOffset(pos - view->requestedPosition());
}
}
diff --git a/src/compositor/wayland_wrapper/qwlsubsurface.cpp b/src/compositor/wayland_wrapper/qwlsubsurface.cpp
index 3f47f95fe..beffee403 100644
--- a/src/compositor/wayland_wrapper/qwlsubsurface.cpp
+++ b/src/compositor/wayland_wrapper/qwlsubsurface.cpp
@@ -99,7 +99,7 @@ void SubSurface::setSubSurface(SubSurface *subSurface, int x, int y)
subSurface->setParent(this);
}
foreach (QWaylandSurfaceView *view, subSurface->m_surface->waylandSurface()->views())
- view->setPos(QPointF(x,y));
+ view->setRequestedPosition(QPointF(x,y));
}
void SubSurface::removeSubSurface(SubSurface *subSurfaces)