From 8d61c9c7b6f5a97803bf154529b413ee69bc2a1c Mon Sep 17 00:00:00 2001 From: "Martin T. H. Sandsmark" Date: Wed, 13 Jul 2016 00:29:15 +0200 Subject: Fix scrolling on hidpi screens Scrolling with libinput was unbearably slow. QScrollBar is much better at scrolling than us, so let it handle it. REVIEW: 128432 BUG: 357618 --- src/kitemviews/kitemlistcontainer.cpp | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) (limited to 'src/kitemviews/kitemlistcontainer.cpp') diff --git a/src/kitemviews/kitemlistcontainer.cpp b/src/kitemviews/kitemlistcontainer.cpp index 69a0a5f27..6974ebb48 100644 --- a/src/kitemviews/kitemlistcontainer.cpp +++ b/src/kitemviews/kitemlistcontainer.cpp @@ -185,27 +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(); - if (event->modifiers().testFlag(Qt::ShiftModifier)) { - const int scrollingDirection = numPixels > 0 ? 1 : -1; - smoothScroller->scrollTo(scrollBar->value() - scrollBar->pageStep() * scrollingDirection); - } else { - smoothScroller->scrollTo(scrollBar->value() - numPixels); - } - } else { - const int numDegrees = event->angleDelta().y() / 8; - const int numSteps = qApp->wheelScrollLines() * numDegrees / 15; - if (event->modifiers().testFlag(Qt::ShiftModifier)) { - const int scrollingDirection = numSteps > 0 ? 1 : -1; - smoothScroller->scrollTo(scrollBar->value() - scrollBar->pageStep() * scrollingDirection); - } else { - smoothScroller->scrollTo(scrollBar->value() - numSteps * scrollBar->pageStep() / 12); - } - } - - event->accept(); + smoothScroller->handleWheelEvent(event); } void KItemListContainer::slotScrollOrientationChanged(Qt::Orientation current, Qt::Orientation previous) -- cgit v1.3