X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/e3fea512699ecfefc2aa7034bae0fc29803fbb9b..8e3addb7e73122a4c89ef347b03f714ff75a253a:/src/kitemviews/kstandarditemlistview.cpp diff --git a/src/kitemviews/kstandarditemlistview.cpp b/src/kitemviews/kstandarditemlistview.cpp index a4e7c3edd..0d57388f3 100644 --- a/src/kitemviews/kstandarditemlistview.cpp +++ b/src/kitemviews/kstandarditemlistview.cpp @@ -4,6 +4,8 @@ * SPDX-License-Identifier: GPL-2.0-or-later */ +#include + #include "kstandarditemlistview.h" #include "kstandarditemlistwidget.h" @@ -110,6 +112,17 @@ bool KStandardItemListView::itemLayoutSupportsItemExpanding(ItemLayout layout) c return layout == DetailsLayout; } +qreal KStandardItemListView::scrollSingleStep() const +{ + if (itemLayout() == DetailsLayout) { + // We want each scroll in details view mode to move by some number of complete rows. + const int rowsPerFullScroll = qCeil((KItemListView::scrollSingleStep() * QApplication::wheelScrollLines()) / itemSize().height()); + return (rowsPerFullScroll * itemSize().height()) / QApplication::wheelScrollLines(); + } + + return KItemListView::scrollSingleStep(); +} + void KStandardItemListView::onItemLayoutChanged(ItemLayout current, ItemLayout previous) { Q_UNUSED(current)