Synchronize input transformation regardless of interactive move resize status

This check is old and I'm not sure why it even exists. It should not be
needed in general.

The problem with this check is that when interactive move/resize
operation finishes, the seat input transformation is not synchronized.
This commit is contained in:
Vlad Zahorodnii 2024-02-19 10:55:25 +02:00
parent c3cda8b62a
commit 64e701fdaf

View file

@ -542,20 +542,7 @@ void PointerInputRedirection::focusUpdate(Window *focusOld, Window *focusNow)
seat->notifyPointerEnter(focusNow->surface(), m_pos, focusNow->inputTransformation());
m_focusGeometryConnection = connect(focusNow, &Window::inputTransformationChanged, this, [this]() {
// TODO: why no assert possible?
if (!focus()) {
return;
}
// TODO: can we check on the window instead?
if (workspace()->moveResizeWindow()) {
// don't update while moving
return;
}
auto seat = waylandServer()->seat();
if (focus()->surface() != seat->focusedPointerSurface()) {
return;
}
seat->setFocusedPointerSurfaceTransformation(focus()->inputTransformation());
waylandServer()->seat()->setFocusedPointerSurfaceTransformation(focus()->inputTransformation());
});
m_constraintsConnection = connect(focusNow->surface(), &SurfaceInterface::pointerConstraintsChanged,