From aa12f9ec1d91b29de1305b8590f587b2cf9b56e3 Mon Sep 17 00:00:00 2001 From: Ahmad Samir Date: Thu, 1 Oct 2020 18:21:18 +0200 Subject: [PATCH] Don't trigger rubberband with back/foward mouse buttons Right now the back/foward mouse buttons work, but also if you hold either of them and move the mouse the rubberband selection is triggered. This is the correct fix (instead of commit d0c71a1435bc9d), to match the original code before the touch events patches, we need to check the back/foward buttons after mouseButtonPressed is emitted and before triggering the rubberbad selection. --- src/kitemviews/kitemlistcontroller.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/kitemviews/kitemlistcontroller.cpp b/src/kitemviews/kitemlistcontroller.cpp index b7d1da7d25..60318047de 100644 --- a/src/kitemviews/kitemlistcontroller.cpp +++ b/src/kitemviews/kitemlistcontroller.cpp @@ -557,12 +557,6 @@ bool KItemListController::mousePressEvent(QGraphicsSceneMouseEvent* event, const return false; } - if (buttons & (Qt::BackButton | Qt::ForwardButton)) { - // Do not select items when clicking the back/forward buttons, see - // https://bugs.kde.org/show_bug.cgi?id=327412. - return true; - } - return true; } @@ -1423,6 +1417,12 @@ bool KItemListController::onPress(const QPoint& screenPos, const QPointF& pos, c { emit mouseButtonPressed(m_pressedIndex, buttons); + if (buttons & (Qt::BackButton | Qt::ForwardButton)) { + // Do not select items when clicking the back/forward buttons, see + // https://bugs.kde.org/show_bug.cgi?id=327412. + return true; + } + if (m_view->isAboveExpansionToggle(m_pressedIndex, m_pressedMousePos)) { m_selectionManager->endAnchoredSelection(); m_selectionManager->setCurrentItem(m_pressedIndex);