aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/misc/e-reflow.c
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/misc/e-reflow.c')
-rw-r--r--widgets/misc/e-reflow.c18
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;
}
}