diff options
-rw-r--r-- | widgets/misc/e-reflow.c | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/widgets/misc/e-reflow.c b/widgets/misc/e-reflow.c index 8754c5a042..c16df99749 100644 --- a/widgets/misc/e-reflow.c +++ b/widgets/misc/e-reflow.c @@ -273,7 +273,7 @@ reflow_columns (EReflow *reflow) inserted at the start of the column */ column_start = reflow->reflow_from_column - 1; start = reflow->columns[column_start]; - column_count = column_start; + column_count = column_start + 1; } list = NULL; @@ -347,15 +347,18 @@ item_removed (EReflowModel *model, int i, EReflow *reflow) int start_of_column = reflow->columns[c]; if (start_of_column <= sorted) { - reflow->reflow_from_column = c; - reflow->need_reflow_columns = TRUE; - set_empty (reflow); - e_canvas_item_request_reflow(GNOME_CANVAS_ITEM (reflow)); - + if (reflow->reflow_from_column == -1 + || reflow->reflow_from_column > c) { + reflow->reflow_from_column = c; + } break; } } + reflow->need_reflow_columns = TRUE; + set_empty (reflow); + e_canvas_item_request_reflow(GNOME_CANVAS_ITEM (reflow)); + e_sorter_array_set_count (reflow->sorter, reflow->count); e_selection_model_simple_delete_rows (E_SELECTION_MODEL_SIMPLE (reflow->selection), i, 1); @@ -403,8 +406,9 @@ items_inserted (EReflowModel *model, int position, int count, EReflow *reflow) if (start_of_column <= sorted) { if (reflow->reflow_from_column == -1 - || reflow->reflow_from_column > c) + || reflow->reflow_from_column > c) { reflow->reflow_from_column = c; + } break; } } |