diff options
| author | Frank Reininghaus <[email protected]> | 2012-01-30 10:07:03 +0100 |
|---|---|---|
| committer | Frank Reininghaus <[email protected]> | 2012-01-30 10:10:15 +0100 |
| commit | 0a33aad3d28048720247faa3acdb4d32849e25b5 (patch) | |
| tree | 27eb877064bc74469daa5ff9bc91ce4c3935c12f /src | |
| parent | d05ffe96f986bcd33281cb5f97b73c1b4bf2b2ae (diff) | |
Fix crash in Compact View if view height is smaller then item height
CCBUG: 292816
FIXED-IN: 4.8.1
(cherry picked from commit f5ecaee9c40c940fe8e1bf4a7d50fe0b18e1932b)
Diffstat (limited to 'src')
| -rw-r--r-- | src/kitemviews/kitemlistview.cpp | 20 |
1 files changed, 9 insertions, 11 deletions
diff --git a/src/kitemviews/kitemlistview.cpp b/src/kitemviews/kitemlistview.cpp index 578865741..4b2c742d9 100644 --- a/src/kitemviews/kitemlistview.cpp +++ b/src/kitemviews/kitemlistview.cpp @@ -508,18 +508,16 @@ void KItemListView::scrollToItem(int index) if (!viewGeometry.contains(currentRect)) { qreal newOffset = scrollOffset(); - if (currentRect.top() < viewGeometry.top()) { - Q_ASSERT(scrollOrientation() == Qt::Vertical); - newOffset += currentRect.top() - viewGeometry.top(); - } else if ((currentRect.bottom() > viewGeometry.bottom())) { - Q_ASSERT(scrollOrientation() == Qt::Vertical); - newOffset += currentRect.bottom() - viewGeometry.bottom(); - } else if (currentRect.left() < viewGeometry.left()) { - if (scrollOrientation() == Qt::Horizontal) { - newOffset += currentRect.left() - viewGeometry.left(); + if (scrollOrientation() == Qt::Vertical) { + if (currentRect.top() < viewGeometry.top()) { + newOffset += currentRect.top() - viewGeometry.top(); + } else if (currentRect.bottom() > viewGeometry.bottom()) { + newOffset += currentRect.bottom() - viewGeometry.bottom(); } - } else if ((currentRect.right() > viewGeometry.right())) { - if (scrollOrientation() == Qt::Horizontal) { + } else { + if (currentRect.left() < viewGeometry.left()) { + newOffset += currentRect.left() - viewGeometry.left(); + } else if (currentRect.right() > viewGeometry.right()) { newOffset += currentRect.right() - viewGeometry.right(); } } |
