]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Update current item and anchor item on mouse clicks
authorFrank Reininghaus <frank78ac@googlemail.com>
Tue, 2 Aug 2011 22:35:03 +0000 (00:35 +0200)
committerFrank Reininghaus <frank78ac@googlemail.com>
Tue, 2 Aug 2011 22:44:29 +0000 (00:44 +0200)
src/kitemviews/kitemlistcontroller.cpp

index 91fb8680657675f8b5e96a67d71d67d8fc61f459..b58ddfae6b921fd5a52e24a94bb94783a1614b5a 100644 (file)
@@ -131,10 +131,17 @@ bool KItemListController::inputMethodEvent(QInputMethodEvent* event)
 
 bool KItemListController::mousePressEvent(QGraphicsSceneMouseEvent* event, const QTransform& transform)
 {
-    Q_UNUSED(event);
-    Q_UNUSED(transform);
     const QPointF pos = transform.map(event->pos());
     m_pressedIndex = m_view->itemAt(pos);
+
+    m_selectionManager->setCurrentItem(m_pressedIndex);
+
+    // The anchor for the current selection is updated except for Shift+LeftButton events
+    // (the current selection is continued with the previous anchor in that case).
+    if (!(event->buttons() & Qt::LeftButton && event->modifiers() & Qt::ShiftModifier)) {
+        m_selectionManager->setAnchorItem(m_pressedIndex);
+    }
+
     return false;
 }