Call performMoveResize when we got a new geoemtry during resize

Summary:
So far on a geometry sync we did not call performMoveResize like we
do on X11 when getting the sync. This resulted in the
clientStepUserMovedResized not getting called during resize and the
geometry update effect to not function.

BUG: 374869
FIXED-IN: 5.9.1

Test Plan: Geometry hint updates

Reviewers: #kwin, #plasma_on_wayland

Subscribers: plasma-devel, kwin

Tags: #plasma_on_wayland, #kwin

Differential Revision: https://phabricator.kde.org/D4333
icc-effect-5.14.5
Martin Gräßlin 2017-01-29 14:30:43 +01:00
parent 74ec881d6a
commit 5083adb1b8
2 changed files with 4 additions and 2 deletions

View File

@ -252,7 +252,6 @@ void MoveResizeWindowTest::testResize()
Test::render(surface.data(), QSize(108, 50), Qt::blue);
QVERIFY(geometryChangedSpy.wait());
QCOMPARE(c->geometry(), QRect(0, 0, 108, 50));
QEXPECT_FAIL("", "BUG 374869", Continue);
QCOMPARE(clientStepUserMovedResizedSpy.count(), 1);
// go down
@ -266,7 +265,6 @@ void MoveResizeWindowTest::testResize()
Test::render(surface.data(), QSize(108, 58), Qt::blue);
QVERIFY(geometryChangedSpy.wait());
QCOMPARE(c->geometry(), QRect(0, 0, 108, 58));
QEXPECT_FAIL("", "BUG 374869", Continue);
QCOMPARE(clientStepUserMovedResizedSpy.count(), 2);
// let's end

View File

@ -508,6 +508,10 @@ void ShellClient::doSetGeometry(const QRect &rect)
workspace()->updateClientArea();
}
emit geometryShapeChanged(this, old);
if (isResize()) {
performMoveResize();
}
}
void ShellClient::doMove(int x, int y)