Use geometry conversion helpers from AbstractClient in InternalClient

Summary:
mapFromClient and mapToClient are equivalent to clientRectToFrameRect and
frameRectToClientRect, respectively.

Test Plan: Compiles.

Reviewers: #kwin, romangg

Reviewed By: #kwin, romangg

Subscribers: kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D26508
This commit is contained in:
Vlad Zahorodnii 2020-01-08 00:12:58 +02:00
parent 2632e4182c
commit 976730a4fd
2 changed files with 8 additions and 20 deletions

View file

@ -68,7 +68,7 @@ InternalClient::InternalClient(QWindow *window)
blockGeometryUpdates(true); blockGeometryUpdates(true);
commitGeometry(m_internalWindow->geometry()); commitGeometry(m_internalWindow->geometry());
updateDecoration(true); updateDecoration(true);
setFrameGeometry(mapFromClient(m_internalWindow->geometry())); setFrameGeometry(clientRectToFrameRect(m_internalWindow->geometry()));
setGeometryRestore(frameGeometry()); setGeometryRestore(frameGeometry());
blockGeometryUpdates(false); blockGeometryUpdates(false);
@ -356,7 +356,7 @@ void InternalClient::setFrameGeometry(int x, int y, int w, int h, ForceGeometry_
return; return;
} }
const QRect newClientGeometry = mapToClient(rect); const QRect newClientGeometry = frameRectToClientRect(rect);
if (m_clientSize == newClientGeometry.size()) { if (m_clientSize == newClientGeometry.size()) {
commitGeometry(rect); commitGeometry(rect);
@ -542,7 +542,7 @@ void InternalClient::destroyDecoration()
return; return;
} }
const QRect clientGeometry = mapToClient(frameGeometry()); const QRect clientGeometry = frameRectToClientRect(frameGeometry());
AbstractClient::destroyDecoration(); AbstractClient::destroyDecoration();
setFrameGeometry(clientGeometry); setFrameGeometry(clientGeometry);
} }
@ -577,16 +577,6 @@ void InternalClient::updateCaption()
} }
} }
QRect InternalClient::mapFromClient(const QRect &rect) const
{
return rect + frameMargins();
}
QRect InternalClient::mapToClient(const QRect &rect) const
{
return rect - frameMargins();
}
void InternalClient::createDecoration(const QRect &rect) void InternalClient::createDecoration(const QRect &rect)
{ {
KDecoration2::Decoration *decoration = Decoration::DecorationBridge::self()->createDecoration(this); KDecoration2::Decoration *decoration = Decoration::DecorationBridge::self()->createDecoration(this);
@ -608,7 +598,7 @@ void InternalClient::createDecoration(const QRect &rect)
const QRect oldFrameGeometry = frameGeometry(); const QRect oldFrameGeometry = frameGeometry();
setDecoration(decoration); setDecoration(decoration);
setFrameGeometry(mapFromClient(rect)); setFrameGeometry(clientRectToFrameRect(rect));
emit geometryShapeChanged(this, oldFrameGeometry); emit geometryShapeChanged(this, oldFrameGeometry);
} }
@ -616,7 +606,7 @@ void InternalClient::createDecoration(const QRect &rect)
void InternalClient::requestGeometry(const QRect &rect) void InternalClient::requestGeometry(const QRect &rect)
{ {
if (m_internalWindow) { if (m_internalWindow) {
m_internalWindow->setGeometry(mapToClient(rect)); m_internalWindow->setGeometry(frameRectToClientRect(rect));
} }
} }
@ -628,7 +618,7 @@ void InternalClient::commitGeometry(const QRect &rect)
m_frameGeometry = rect; m_frameGeometry = rect;
m_clientSize = mapToClient(frameGeometry()).size(); m_clientSize = frameRectToClientRect(frameGeometry()).size();
addWorkspaceRepaint(visibleRect()); addWorkspaceRepaint(visibleRect());
syncGeometryToInternalWindow(); syncGeometryToInternalWindow();
@ -668,7 +658,7 @@ void InternalClient::markAsMapped()
void InternalClient::syncGeometryToInternalWindow() void InternalClient::syncGeometryToInternalWindow()
{ {
if (m_internalWindow->geometry() == mapToClient(frameGeometry())) { if (m_internalWindow->geometry() == frameRectToClientRect(frameGeometry())) {
return; return;
} }
@ -681,7 +671,7 @@ void InternalClient::updateInternalWindowGeometry()
return; return;
} }
commitGeometry(mapFromClient(m_internalWindow->geometry())); commitGeometry(clientRectToFrameRect(m_internalWindow->geometry()));
} }
} }

View file

@ -104,8 +104,6 @@ protected:
void updateCaption() override; void updateCaption() override;
private: private:
QRect mapFromClient(const QRect &rect) const;
QRect mapToClient(const QRect &rect) const;
void createDecoration(const QRect &rect); void createDecoration(const QRect &rect);
void requestGeometry(const QRect &rect); void requestGeometry(const QRect &rect);
void commitGeometry(const QRect &rect); void commitGeometry(const QRect &rect);