X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/2744fb4a0b70cdff98c4f7e857247828cffe791e..5bee1889e1682f1e7ffe55e49beaf4544eaf7157:/src/kitemviews/kitemlistcontainer.cpp diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp index 5e45a1766..b4ea62fac 100644 --- a/src/kitemviews/kitemlistcontainer.cpp +++ b/src/kitemviews/kitemlistcontainer.cpp @@ -31,12 +31,10 @@ #include #include #include -#include #include #include #include -#include /** * Replaces the default viewport of KItemListContainer by a @@ -45,10 +43,12 @@ */ 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) : @@ -185,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) @@ -275,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(); @@ -417,3 +407,4 @@ void KItemListContainer::updateScrollOffsetScrollBarPolicy() } } +#include "kitemlistcontainer.moc"