From 390e57914b5c73ff09fe1365ebc662b52a4ce5b7 Mon Sep 17 00:00:00 2001 From: Alberto Garcia Date: Mon, 21 Jan 2008 19:29:32 +0000 Subject: [PATCH] * If the last message of a folder is deleted from the viewer, select the previous one instead of closing the viewer * Close the message viewer after moving the last message of a folder. Fixes NB#79541 pmo-trunk-r4073 --- src/modest-ui-actions.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/modest-ui-actions.c b/src/modest-ui-actions.c index d495f70..bdb6448 100644 --- a/src/modest-ui-actions.c +++ b/src/modest-ui-actions.c @@ -398,7 +398,8 @@ modest_ui_actions_refresh_message_window_after_delete (ModestMsgViewWindow* win) if (modest_msg_view_window_last_message_selected (win) && modest_msg_view_window_first_message_selected (win)) { modest_ui_actions_on_close_window (NULL, MODEST_WINDOW (win)); - } else if (!modest_msg_view_window_select_next_message (win)) { + } else if (!modest_msg_view_window_select_next_message (win) && + !modest_msg_view_window_select_previous_message (win)) { gboolean ret_value; g_signal_emit_by_name (G_OBJECT (win), "delete-event", NULL, &ret_value); } @@ -4253,10 +4254,14 @@ move_to_cb (ModestMailOperation *mail_op, if (MODEST_IS_MSG_VIEW_WINDOW (object)) { ModestMsgViewWindow *self = MODEST_MSG_VIEW_WINDOW (object); - if (!modest_msg_view_window_select_next_message (self)) - if (!modest_msg_view_window_select_previous_message (self)) - /* No more messages to view, so close this window */ - modest_ui_actions_on_close_window (NULL, MODEST_WINDOW(self)); + if (modest_msg_view_window_last_message_selected (self) && + modest_msg_view_window_first_message_selected (self)) { + modest_ui_actions_on_close_window (NULL, MODEST_WINDOW (self)); + } else if (!modest_msg_view_window_select_next_message (self) && + !modest_msg_view_window_select_previous_message (self)) { + /* No more messages to view, so close this window */ + modest_ui_actions_on_close_window (NULL, MODEST_WINDOW(self)); + } } else if (MODEST_IS_MAIN_WINDOW (object) && helper->reference != NULL) { GtkWidget *header_view; GtkTreePath *path; -- 1.7.9.5