From 831ff2d0ac8d2d19d4ab3c6b870fc3ffa9da1c5c Mon Sep 17 00:00:00 2001 From: Sergey Bugaev Date: Tue, 28 Jan 2020 16:25:46 +0300 Subject: [PATCH] LibGUI: Only consider starting a drag from an already selected item This means we can deselect other items immediately when performing a mouse-down on an unselected item. --- Libraries/LibGUI/GAbstractView.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Libraries/LibGUI/GAbstractView.cpp b/Libraries/LibGUI/GAbstractView.cpp index b979d6d4915..9c05e725059 100644 --- a/Libraries/LibGUI/GAbstractView.cpp +++ b/Libraries/LibGUI/GAbstractView.cpp @@ -191,10 +191,9 @@ void GAbstractView::mousedown_event(GMouseEvent& event) m_selection.clear(); } else if (event.modifiers() & Mod_Ctrl) { m_selection.toggle(index); - } else if (event.button() == GMouseButton::Left && !m_model->drag_data_type().is_null()) { + } else if (event.button() == GMouseButton::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; - m_selection.add(index); } else { m_selection.set(index); }