Fix misplaced client windows

Summary:
This regression was introduced by me, sorry. The client window may be at
location other than (0, 0), in which case we have to move it to (0, 0)
to ensure that the client contents is not covered by window frame.

BUG: 417584
FIXED-IN: 5.18.1

Reviewers: #kwin, broulik

Reviewed By: broulik

Subscribers: broulik, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D27456
This commit is contained in:
Vlad Zahorodnii 2020-02-17 14:10:46 +02:00
parent 03407fcf59
commit cfa5daaad1

View file

@ -4303,7 +4303,7 @@ void X11Client::updateServerGeometry()
if (!isShade()) {
if (needsGeometryUpdate) {
m_wrapper.setGeometry(QRect(clientPos(), clientSize()));
m_client.resize(clientSize());
m_client.setGeometry(QRect(QPoint(0, 0), clientSize()));
}
// SELI - won't this be too expensive?
// THOMAS - yes, but gtk+ clients will not resize without ...
@ -4792,7 +4792,7 @@ void X11Client::doResizeSync()
// this, then we might render partially updated client window. I know, it sucks.
m_frame.setGeometry(moveResizeBufferGeometry);
m_wrapper.setGeometry(QRect(clientPos(), moveResizeClientGeometry.size()));
m_client.resize(moveResizeClientGeometry.size());
m_client.setGeometry(QRect(QPoint(0, 0), moveResizeClientGeometry.size()));
}
void X11Client::doPerformMoveResize()