From 57ec2b3851d54151796aac9bdd063b792a50f4d4 Mon Sep 17 00:00:00 2001 From: Michail Vourlakos Date: Sun, 16 Jan 2022 03:40:40 +0200 Subject: [PATCH] fix for vertical panels identifying top borders --use also floating screen edge margin in order to identify if the top or bottom borders of a vertical dock or panel should be drawn --- app/view/positioner.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/view/positioner.cpp b/app/view/positioner.cpp index 36a6fa8d5..5b881cfff 100644 --- a/app/view/positioner.cpp +++ b/app/view/positioner.cpp @@ -673,7 +673,7 @@ void Positioner::validateTopBottomBorders(QRect availableScreenRect, QRegion ava if (availableScreenRect.top() != m_view->screenGeometry().top()) { //! check top border - int x = m_view->location() == Plasma::Types::LeftEdge ? m_view->screenGeometry().x() : m_view->screenGeometry().right(); + int x = m_view->location() == Plasma::Types::LeftEdge ? m_view->screenGeometry().x() : m_view->screenGeometry().right() - edgeMargin + 1; QRegion fitInRegion = QRect(x, availableScreenRect.y()-1, edgeMargin, 1); QRegion subtracted = fitInRegion.subtracted(availableScreenRegion); @@ -690,7 +690,7 @@ void Positioner::validateTopBottomBorders(QRect availableScreenRect, QRegion ava if (availableScreenRect.bottom() != m_view->screenGeometry().bottom()) { //! check top border - int x = m_view->location() == Plasma::Types::LeftEdge ? m_view->screenGeometry().x() : m_view->screenGeometry().right(); + int x = m_view->location() == Plasma::Types::LeftEdge ? m_view->screenGeometry().x() : m_view->screenGeometry().right() - edgeMargin + 1; QRegion fitInRegion = QRect(x, availableScreenRect.bottom()+1, edgeMargin, 1); QRegion subtracted = fitInRegion.subtracted(availableScreenRegion);