┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistcontainer.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2011-09-28 20:04:31 +0200
committerPeter Penz <[email protected]>2011-09-28 20:06:58 +0200
commite43f29576d4666a66cd4d236418baf403f176069 (patch)
tree3b53d949837b56060a4973891338cdbad5e5b348 /src/kitemviews/kitemlistcontainer.cpp
parentec38f1cdb641f0b277100edd92b268ec856e2ece (diff)
Details view: Improve performance when expanding items
Prevent unnecessary calls to visibleRolesSizes() when expanding items. Also the performance has been improved when resizing the window.
Diffstat (limited to 'src/kitemviews/kitemlistcontainer.cpp')
-rw-r--r--src/kitemviews/kitemlistcontainer.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp
index 3237187b4..45db700c5 100644
--- a/src/kitemviews/kitemlistcontainer.cpp
+++ b/src/kitemviews/kitemlistcontainer.cpp
@@ -205,7 +205,7 @@ void KItemListContainer::wheelEvent(QWheelEvent* event)
}
KItemListView* view = m_controller->view();
-
+
if (!view || event->orientation() != view->scrollOrientation()) {
return;
}
@@ -343,7 +343,7 @@ void KItemListContainer::updateItemOffsetScrollBar()
}
const int value = view->itemOffset();
- const int maximum = qMax(0, int(view->maximumItemOffset() - pageStep));
+ const int maximum = qMax(0, int(view->maximumItemOffset()) - pageStep);
itemOffsetScrollBar->setSingleStep(singleStep);
itemOffsetScrollBar->setPageStep(pageStep);
@@ -366,13 +366,16 @@ void KItemListContainer::updateGeometries()
rect.adjust(0, 0, -widthDec, -heightDec);
- m_controller->view()->setGeometry(QRect(0, 0, rect.width(), rect.height()));
+ const QRectF newGeometry(0, 0, rect.width(), rect.height());
+ 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()));
+ 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()));
- updateScrollOffsetScrollBar();
- updateItemOffsetScrollBar();
+ updateScrollOffsetScrollBar();
+ updateItemOffsetScrollBar();
+ }
}
void KItemListContainer::initialize()