From df3957393c3d12dc1798efcce28b69a0ebb9a740 Mon Sep 17 00:00:00 2001 From: Thomas Goyne Date: Sat, 1 Feb 2014 20:27:41 -0800 Subject: [PATCH] Set extendRow even when active_line doesn't change After shift-clicking on the grid the row to extend from doesn't equal the active line, and clicking on the current active line to deselect all other lines need to update the extend row. --- aegisub/src/base_grid.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/aegisub/src/base_grid.cpp b/aegisub/src/base_grid.cpp index 4675ad585..377552b02 100644 --- a/aegisub/src/base_grid.cpp +++ b/aegisub/src/base_grid.cpp @@ -1036,8 +1036,10 @@ void BaseGrid::SetActiveLine(AssDialogue *new_line) { AnnounceActiveLineChanged(active_line); MakeRowVisible(GetDialogueIndex(active_line)); Refresh(false); - extendRow = GetDialogueIndex(new_line); } + // extendRow may not equal the active row if it was set via a shift-click, + // so update it even if the active line didn't change + extendRow = GetDialogueIndex(new_line); } void BaseGrid::SetSelectionAndActive(Selection const& new_selection, AssDialogue *new_line) {