summaryrefslogtreecommitdiffstats
path: root/src/compositor/extensions/qwaylandxdgshellintegration.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/compositor/extensions/qwaylandxdgshellintegration.cpp')
-rw-r--r--src/compositor/extensions/qwaylandxdgshellintegration.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/compositor/extensions/qwaylandxdgshellintegration.cpp b/src/compositor/extensions/qwaylandxdgshellintegration.cpp
index 41d559e4d..514f956ba 100644
--- a/src/compositor/extensions/qwaylandxdgshellintegration.cpp
+++ b/src/compositor/extensions/qwaylandxdgshellintegration.cpp
@@ -119,7 +119,7 @@ void XdgShellIntegration::handleStartResize(QWaylandInputDevice *inputDevice, QW
resizeState.inputDevice = inputDevice;
resizeState.resizeEdges = edges;
resizeState.initialWindowSize = m_xdgSurface->windowGeometry().size();
- resizeState.initialPosition = m_item->position();
+ resizeState.initialPosition = m_item->moveItem()->position();
resizeState.initialSurfaceSize = m_item->surface()->size();
resizeState.initialized = false;
}
@@ -127,7 +127,7 @@ void XdgShellIntegration::handleStartResize(QWaylandInputDevice *inputDevice, QW
void XdgShellIntegration::handleSetMaximized()
{
maximizeState.initialWindowSize = m_xdgSurface->windowGeometry().size();
- maximizeState.initialPosition = m_item->position();
+ maximizeState.initialPosition = m_item->moveItem()->position();
QWaylandOutput *output = m_item->view()->output();
m_xdgSurface->sendMaximized(output->availableGeometry().size() / output->scaleFactor());
@@ -142,9 +142,9 @@ void XdgShellIntegration::handleMaximizedChanged()
{
if (m_xdgSurface->maximized()) {
QWaylandOutput *output = m_item->view()->output();
- m_item->setPosition(output->availableGeometry().topLeft());
+ m_item->moveItem()->setPosition(output->position() + output->availableGeometry().topLeft());
} else {
- m_item->setPosition(maximizeState.initialPosition);
+ m_item->moveItem()->setPosition(maximizeState.initialPosition);
}
}
@@ -164,7 +164,7 @@ void XdgShellIntegration::handleSurfaceSizeChanged()
if (resizeState.resizeEdges & QWaylandXdgSurface::ResizeEdge::LeftEdge)
x += resizeState.initialSurfaceSize.width() - m_item->surface()->size().width();
- m_item->setPosition(QPointF(x, y));
+ m_item->moveItem()->setPosition(QPointF(x, y));
}
}
@@ -174,7 +174,7 @@ XdgPopupIntegration::XdgPopupIntegration(QWaylandQuickShellSurfaceItem *item)
, m_xdgShell(QWaylandXdgPopupPrivate::get(m_xdgPopup)->m_xdgShell)
{
item->setSurface(m_xdgPopup->surface());
- item->setPosition(QPointF(m_xdgPopup->position() * item->view()->output()->scaleFactor()));
+ item->moveItem()->setPosition(QPointF(m_xdgPopup->position() * item->view()->output()->scaleFactor()));
QWaylandClient *client = m_xdgPopup->surface()->client();
QWaylandQuickShellEventFilter::startFilter(client, [&]() { m_xdgShell->closeAllPopups(); });