diff options
Diffstat (limited to 'mail/em-folder-view.c')
-rw-r--r-- | mail/em-folder-view.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mail/em-folder-view.c b/mail/em-folder-view.c index dfad679d16..8c8deec7f1 100644 --- a/mail/em-folder-view.c +++ b/mail/em-folder-view.c @@ -611,9 +611,10 @@ emfv_popup_delete(GtkWidget *w, EMFolderView *emfv) uids = message_list_get_selected(emfv->list); em_folder_view_mark_selected(emfv, CAMEL_MESSAGE_SEEN|CAMEL_MESSAGE_DELETED, CAMEL_MESSAGE_SEEN|CAMEL_MESSAGE_DELETED); - if (uids->len == 1) - message_list_select(emfv->list, MESSAGE_LIST_SELECT_NEXT, 0, 0, FALSE); - + if (uids->len == 1) { + if (!message_list_select(emfv->list, MESSAGE_LIST_SELECT_NEXT, 0, 0, FALSE)) + message_list_select(emfv->list, MESSAGE_LIST_SELECT_PREVIOUS, 0, 0, FALSE); + } em_utils_uids_free(uids); } @@ -1833,6 +1834,9 @@ emfv_list_key_press(ETree *tree, int row, ETreePath path, int col, GdkEvent *ev, emfv_popup_undelete(NULL, emfv); else emfv_popup_delete(NULL, emfv); + + if (!message_list_select (emfv->list, MESSAGE_LIST_SELECT_NEXT, 0, 0, FALSE)) + message_list_select (emfv->list, MESSAGE_LIST_SELECT_PREVIOUS, 0, 0, FALSE); break; case GDK_Menu: /* FIXME: location of popup */ |