From f1cdb504e8a763113c629d806656eec6b7eca48e Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Mon, 29 Apr 2002 23:17:14 +0000 Subject: From gal/e-table/ChangeLog: 2002-04-29 Christopher James Lahey * e-table-item.c (eti_cursor_change): Redraw a row that is no longer the cursor even if this item isn't getting the new cursor. svn path=/trunk/; revision=16642 --- widgets/table/e-table-item.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'widgets') diff --git a/widgets/table/e-table-item.c b/widgets/table/e-table-item.c index b647d1b1bd..d92a174f45 100644 --- a/widgets/table/e-table-item.c +++ b/widgets/table/e-table-item.c @@ -1195,7 +1195,8 @@ static void e_table_item_redraw_row (ETableItem *eti, int row) { - e_table_item_redraw_range (eti, 0, row, eti->cols - 1, row); + if (row != -1) + e_table_item_redraw_range (eti, 0, row, eti->cols - 1, row); } static void @@ -2988,6 +2989,9 @@ eti_cursor_change (ESelectionModel *selection, int row, int col, ETableItem *eti view_row = model_to_view_row(eti, row); view_col = model_to_view_col(eti, col); + if (eti->old_cursor_row != -1 && view_row != eti->old_cursor_row) + e_table_item_redraw_row (eti, eti->old_cursor_row); + if (view_row == -1 || view_col == -1) { e_table_item_leave_edit_(eti); eti->old_cursor_row = -1; @@ -3007,13 +3011,9 @@ eti_cursor_change (ESelectionModel *selection, int row, int col, ETableItem *eti e_table_item_leave_edit_(eti); gtk_signal_emit (GTK_OBJECT (eti), eti_signals [CURSOR_CHANGE], view_row); - if (eti->old_cursor_row != -1) { - e_table_item_redraw_row (eti, eti->old_cursor_row); - e_table_item_redraw_row (eti, view_row); - } else { - eti->needs_redraw = TRUE; - gnome_canvas_item_request_update(GNOME_CANVAS_ITEM(eti)); - } + + e_table_item_redraw_row (eti, view_row); + eti->old_cursor_row = view_row; } -- cgit v1.2.3