1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-11 02:13:56 +09:00

LibGUI: Fix invalid ModelIndices during shift-click multiselection

Previously, If the widget was unfocused, the selection start index
would be invalid. This would result in invalid selections when doing
shift+click on the widget (while it is unfocused).

Now, we reassign the selection start index to current index
before we initiate multiselection, if selection start index is invalid.

Should Fix SerenityOS#11999 and the same bug inside FileManager.
This commit is contained in:
Aayush 2022-12-28 21:53:23 +01:00 committed by Andreas Kling
parent 5f67d002a2
commit 7a4b912ece
Notes: sideshowbarker 2024-07-17 02:24:14 +09:00

View file

@ -493,6 +493,8 @@ void AbstractView::set_cursor(ModelIndex index, SelectionUpdate selection_update
if (!m_selection.contains(index))
clear_selection();
} else if (selection_update == SelectionUpdate::Shift) {
if (!selection_start_index().is_valid())
set_selection_start_index(index);
select_range(index);
}