소스 검색

LibGUI: Ctrl+clicking on an AbstractView should move cursor

Don't just toggle the selection of the index, also move the cursor to
where the user is clicking.
Andreas Kling 4 년 전
부모
커밋
9947262eaa
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      Libraries/LibGUI/AbstractView.cpp

+ 2 - 2
Libraries/LibGUI/AbstractView.cpp

@@ -214,7 +214,7 @@ void AbstractView::mousedown_event(MouseEvent& event)
     if (!index.is_valid()) {
         clear_selection();
     } else if (event.modifiers() & Mod_Ctrl) {
-        toggle_selection(index);
+        set_cursor(index, SelectionUpdate::Ctrl);
     } else if (event.button() == MouseButton::Left && m_selection.contains(index) && !m_model->drag_data_type().is_null()) {
         // We might be starting a drag, so don't throw away other selected items yet.
         m_might_drag = true;
@@ -438,7 +438,7 @@ void AbstractView::set_cursor(ModelIndex index, SelectionUpdate selection_update
         if (selection_update == SelectionUpdate::Set)
             selection().set(index);
         else if (selection_update == SelectionUpdate::Ctrl)
-            selection().toggle(index);
+            toggle_selection(index);
 
         // FIXME: Support the other SelectionUpdate types