aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog6
-rw-r--r--mail/mail-callbacks.c10
2 files changed, 14 insertions, 2 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index d16b628130..b13f16a1c4 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,9 @@
+2001-07-24 Jason Leach <jleach@ximian.com>
+
+ * mail-callbacks.c (delete_msg): If we're deleting the last
+ message, select the previous, not next, which actually selects
+ nothing. Fixes #5323.
+
2001-07-24 Jeffrey Stedfast <fejj@ximian.com>
* mail-ops.c (save_part_save): Pass the O_TRUNC flag to open so
diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c
index 6b3a9faa8f..756ade4d0d 100644
--- a/mail/mail-callbacks.c
+++ b/mail/mail-callbacks.c
@@ -1551,8 +1551,14 @@ delete_msg (GtkWidget *button, gpointer user_data)
if (deleted == 1) {
row = e_tree_row_of_node (fb->message_list->tree,
e_tree_get_cursor (fb->message_list->tree));
- message_list_select (fb->message_list, row, MESSAGE_LIST_SELECT_NEXT,
- 0, 0);
+
+ /* If this is the last message, select the previous */
+ if (row+1 == e_tree_row_count (fb->message_list->tree))
+ message_list_select (fb->message_list, row, MESSAGE_LIST_SELECT_PREVIOUS,
+ 0, 0);
+ else
+ message_list_select (fb->message_list, row, MESSAGE_LIST_SELECT_NEXT,
+ 0, 0);
}
}