From c929d977a772b82fb747644c7b4b2b91010c96e5 Mon Sep 17 00:00:00 2001 From: Vlad Zahorodnii Date: Thu, 20 May 2021 16:51:41 +0300 Subject: [PATCH] Move geometry before blocking to X11Client It's only used by X11Client. Neither InternalClient nor WaylandClient need buffer/frame/client geometry before blocking. --- src/abstract_client.cpp | 22 ---------------------- src/abstract_client.h | 7 ------- src/x11client.cpp | 13 ++++++++----- src/x11client.h | 3 +++ 4 files changed, 11 insertions(+), 34 deletions(-) diff --git a/src/abstract_client.cpp b/src/abstract_client.cpp index 6aed197851..5ae514b390 100644 --- a/src/abstract_client.cpp +++ b/src/abstract_client.cpp @@ -2057,28 +2057,6 @@ BORDER(Right) BORDER(Top) #undef BORDER -QRect AbstractClient::bufferGeometryBeforeUpdateBlocking() const -{ - return m_bufferGeometryBeforeUpdateBlocking; -} - -QRect AbstractClient::frameGeometryBeforeUpdateBlocking() const -{ - return m_frameGeometryBeforeUpdateBlocking; -} - -QRect AbstractClient::clientGeometryBeforeUpdateBlocking() const -{ - return m_clientGeometryBeforeUpdateBlocking; -} - -void AbstractClient::updateGeometryBeforeUpdateBlocking() -{ - m_bufferGeometryBeforeUpdateBlocking = bufferGeometry(); - m_frameGeometryBeforeUpdateBlocking = frameGeometry(); - m_clientGeometryBeforeUpdateBlocking = clientGeometry(); -} - void AbstractClient::updateInitialMoveResizeGeometry() { m_interactiveMoveResize.initialGeometry = frameGeometry(); diff --git a/src/abstract_client.h b/src/abstract_client.h index 5f23dc67f6..5bb1647d68 100644 --- a/src/abstract_client.h +++ b/src/abstract_client.h @@ -1070,10 +1070,6 @@ protected: }; MoveResizeMode pendingMoveResizeMode() const; void setPendingMoveResizeMode(MoveResizeMode mode); - QRect bufferGeometryBeforeUpdateBlocking() const; - QRect frameGeometryBeforeUpdateBlocking() const; - QRect clientGeometryBeforeUpdateBlocking() const; - void updateGeometryBeforeUpdateBlocking(); virtual void moveResizeInternal(const QRect &rect, MoveResizeMode mode) = 0; /** @@ -1305,9 +1301,6 @@ private: MoveResizeMode m_pendingMoveResizeMode = MoveResizeMode::None; friend class GeometryUpdatesBlocker; QRect m_moveResizeGeometry; - QRect m_bufferGeometryBeforeUpdateBlocking; - QRect m_frameGeometryBeforeUpdateBlocking; - QRect m_clientGeometryBeforeUpdateBlocking; QRect m_keyboardGeometryRestore; QRect m_maximizeGeometryRestore; QRect m_fullscreenGeometryRestore; diff --git a/src/x11client.cpp b/src/x11client.cpp index 92ed990ce6..05a903b9a4 100644 --- a/src/x11client.cpp +++ b/src/x11client.cpp @@ -3992,13 +3992,16 @@ void X11Client::moveResizeInternal(const QRect &rect, MoveResizeMode mode) return; } - const QRect oldBufferGeometry = bufferGeometryBeforeUpdateBlocking(); - const QRect oldFrameGeometry = frameGeometryBeforeUpdateBlocking(); - const QRect oldClientGeometry = clientGeometryBeforeUpdateBlocking(); + const QRect oldBufferGeometry = m_bufferGeometryBeforeUpdateBlocking; + const QRect oldFrameGeometry = m_frameGeometryBeforeUpdateBlocking; + const QRect oldClientGeometry = m_clientGeometryBeforeUpdateBlocking; updateServerGeometry(); updateWindowRules(Rules::Position|Rules::Size); - updateGeometryBeforeUpdateBlocking(); + + m_bufferGeometryBeforeUpdateBlocking = m_bufferGeometry; + m_frameGeometryBeforeUpdateBlocking = m_frameGeometry; + m_clientGeometryBeforeUpdateBlocking = m_clientGeometry; // keep track of old maximize mode // to detect changes @@ -4019,7 +4022,7 @@ void X11Client::moveResizeInternal(const QRect &rect, MoveResizeMode mode) void X11Client::updateServerGeometry() { - const QRect oldBufferGeometry = bufferGeometryBeforeUpdateBlocking(); + const QRect oldBufferGeometry = m_bufferGeometryBeforeUpdateBlocking; if (oldBufferGeometry.size() != m_bufferGeometry.size()) { resizeDecoration(); diff --git a/src/x11client.h b/src/x11client.h index 71fef20eb7..749ad9d315 100644 --- a/src/x11client.h +++ b/src/x11client.h @@ -503,6 +503,9 @@ private: QMetaObject::Connection m_edgeGeometryTrackingConnection; QMargins m_clientFrameExtents; + QRect m_bufferGeometryBeforeUpdateBlocking; + QRect m_frameGeometryBeforeUpdateBlocking; + QRect m_clientGeometryBeforeUpdateBlocking; }; inline xcb_window_t X11Client::wrapperId() const