]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Fix crash in Compact View if view height is smaller then item height
authorFrank Reininghaus <frank78ac@googlemail.com>
Mon, 30 Jan 2012 09:07:03 +0000 (10:07 +0100)
committerFrank Reininghaus <frank78ac@googlemail.com>
Mon, 30 Jan 2012 09:10:15 +0000 (10:10 +0100)
CCBUG: 292816
FIXED-IN: 4.8.1
(cherry picked from commit f5ecaee9c40c940fe8e1bf4a7d50fe0b18e1932b)

src/kitemviews/kitemlistview.cpp

index 578865741846ce725fbae4d450aa5249ef56dc35..4b2c742d98d95d9a6fce0690354a3abba79be935 100644 (file)
@@ -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();
             }
         }