┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/kitemviews/kitemlistcontainer.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp
index cd2fca1e1..8498286c9 100644
--- a/src/kitemviews/kitemlistcontainer.cpp
+++ b/src/kitemviews/kitemlistcontainer.cpp
@@ -351,14 +351,15 @@ void KItemListContainer::updateGeometries()
? extra + scrollbarSpacing + style()->pixelMetric(QStyle::PM_ScrollBarExtent, &option, this)
: extra;
- rect.adjust(0, 0, -widthDec, -heightDec);
-
- const QRectF newGeometry(0, 0, rect.width(), rect.height());
+ const QRectF newGeometry(0, 0, rect.width() - widthDec,
+ rect.height() - heightDec);
if (m_controller->view()->geometry() != newGeometry) {
m_controller->view()->setGeometry(newGeometry);
- static_cast<KItemListContainerViewport*>(viewport())->scene()->setSceneRect(0, 0, rect.width(), rect.height());
- static_cast<KItemListContainerViewport*>(viewport())->viewport()->setGeometry(QRect(0, 0, rect.width(), rect.height()));
+ // Get the real geometry of the view again since the scrollbars
+ // visibilities and the view geometry may have changed in re-layout.
+ static_cast<KItemListContainerViewport*>(viewport())->scene()->setSceneRect(m_controller->view()->geometry());
+ static_cast<KItemListContainerViewport*>(viewport())->viewport()->setGeometry(m_controller->view()->geometry().toRect());
updateScrollOffsetScrollBar();
updateItemOffsetScrollBar();