From 92c1a195b5543b33d39cd46a0de539e10ee27e57 Mon Sep 17 00:00:00 2001 From: Paul Date: Mon, 4 Jul 2016 11:02:58 +0100 Subject: [PATCH] make 'next_on_delete' hidden pref apply after trashing or moving a msg in addition to deleting a msg fixes bug #3600. document this hidden pref also --- manual/advanced.xml | 11 ++++++++++- src/summaryview.c | 8 ++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/manual/advanced.xml b/manual/advanced.xml index 2d49d00cb..223c9c929 100644 --- a/manual/advanced.xml +++ b/manual/advanced.xml @@ -752,7 +752,16 @@ View as is used in the Message List. Default is '0', turned off. - + + + next_on_delete + + + '0' or '1'. Controls the message selection after deleting, moving, or + trashing a message. Default is '0', select previous message. + + + outgoing_fallback_to_ascii diff --git a/src/summaryview.c b/src/summaryview.c index 731d24f6b..4a519df1a 100644 --- a/src/summaryview.c +++ b/src/summaryview.c @@ -4594,11 +4594,11 @@ void summary_move_selected_to(SummaryView *summaryview, FolderItem *to_folder) GtkCMCTreeNode *node = NULL; if (summaryview->sort_type == SORT_ASCENDING) { node = summary_find_next_msg(summaryview, sel_last); - if (!node) + if (!node || prefs_common.next_on_delete == FALSE) node = summary_find_prev_msg(summaryview, sel_last); } else { node = summary_find_prev_msg(summaryview, sel_last); - if (!node) + if (!node || prefs_common.next_on_delete == FALSE) node = summary_find_next_msg(summaryview, sel_last); } summary_select_node(summaryview, node, summaryview->display_msg, TRUE); @@ -4964,11 +4964,11 @@ gboolean summary_execute(SummaryView *summaryview) summary_unselect_all(summaryview); if (summaryview->sort_type == SORT_ASCENDING) { new_selected = summary_find_next_msg(summaryview, node); - if (!new_selected) + if (!new_selected || prefs_common.next_on_delete == FALSE) new_selected = summary_find_prev_msg(summaryview, node); } else { new_selected = summary_find_prev_msg(summaryview, node); - if (!new_selected) + if (!new_selected || prefs_common.next_on_delete == FALSE) new_selected = summary_find_next_msg(summaryview, node); } } -- 2.25.1