diff --git a/aegisub/src/base_grid.cpp b/aegisub/src/base_grid.cpp index 6d6453e72..b9d4d2a14 100644 --- a/aegisub/src/base_grid.cpp +++ b/aegisub/src/base_grid.cpp @@ -38,6 +38,7 @@ #ifndef AGI_PRE #include +#include #include #include @@ -174,6 +175,8 @@ void BaseGrid::UpdateMaps(bool preserve_selected_rows) { bind1st(std::mem_fun(&BaseGrid::GetDialogueIndex), this)); } + size_t old_diag_count = index_line_map.size(); + index_line_map.clear(); line_index_map.clear(); @@ -244,6 +247,9 @@ void BaseGrid::UpdateMaps(bool preserve_selected_rows) { EndBatch(); + if ((int)log10((double)old_diag_count) != (int)log10((double)index_line_map.size())) + SetColumnWidths(); + Refresh(false); }