]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kitemlistcontainer.cpp
Merge branch 'master' of git.kde.org:dolphin
[dolphin.git] / src / kitemviews / kitemlistcontainer.cpp
index 46ac4745e70fa6ab9c3825fe7e6b5f67ed7846e7..b4ea62fac354249d66e4977d94807c6d05f515a0 100644 (file)
@@ -35,7 +35,6 @@
 #include <QStyle>
 #include <QStyleOption>
 
-#include <KDebug>
 
 /**
  * Replaces the default viewport of KItemListContainer by a
  */
 class KItemListContainerViewport : public QGraphicsView
 {
+    Q_OBJECT
+
 public:
     KItemListContainerViewport(QGraphicsScene* scene, QWidget* parent);
 protected:
-    virtual void wheelEvent(QWheelEvent* event);
+    void wheelEvent(QWheelEvent* event) Q_DECL_OVERRIDE;
 };
 
 KItemListContainerViewport::KItemListContainerViewport(QGraphicsScene* scene, QWidget* parent) :
@@ -184,17 +185,7 @@ void KItemListContainer::wheelEvent(QWheelEvent* event)
     KItemListSmoothScroller* smoothScroller = scrollHorizontally ?
                                               m_horizontalSmoothScroller : m_verticalSmoothScroller;
 
-    const QScrollBar* scrollBar = smoothScroller->scrollBar();
-    if (!event->pixelDelta().isNull()) {
-        const int numPixels =  event->pixelDelta().y();
-        smoothScroller->scrollTo(scrollBar->value() - numPixels);
-    } else {
-        const int numDegrees = event->angleDelta().y() / 8;
-        const int numSteps = numDegrees / 15;
-        smoothScroller->scrollTo(scrollBar->value() - numSteps * scrollBar->pageStep() / 4);
-    }
-
-    event->accept();
+    smoothScroller->handleWheelEvent(event);
 }
 
 void KItemListContainer::slotScrollOrientationChanged(Qt::Orientation current, Qt::Orientation previous)
@@ -274,7 +265,7 @@ void KItemListContainer::updateScrollOffsetScrollBar()
     if (view->scrollOrientation() == Qt::Vertical) {
         smoothScroller = m_verticalSmoothScroller;
         scrollOffsetScrollBar = verticalScrollBar();
-        singleStep = view->itemSize().height();
+        singleStep = view->itemSizeHint().height();
         // We cannot use view->size().height() because this height might
         // include the header widget, which is not part of the scrolled area.
         pageStep = view->verticalPageStep();
@@ -416,3 +407,4 @@ void KItemListContainer::updateScrollOffsetScrollBarPolicy()
     }
 }
 
+#include "kitemlistcontainer.moc"