aboutsummaryrefslogtreecommitdiffstats
path: root/mail/e-mail-reader.c
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2009-10-28 21:06:15 +0800
committerMatthew Barnes <mbarnes@redhat.com>2009-10-28 21:47:57 +0800
commit1cd5fb6de35c30eb1965c9847a808aefac325778 (patch)
tree48e4f26c7017fcc44512d6371a06823a4804ec0f /mail/e-mail-reader.c
parentb89a9ae09da810024655a87e5c466c2b171a47b4 (diff)
downloadgsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.tar
gsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.tar.gz
gsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.tar.bz2
gsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.tar.lz
gsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.tar.xz
gsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.tar.zst
gsoc2013-evolution-1cd5fb6de35c30eb1965c9847a808aefac325778.zip
Don't update the message list when right-clicking on a folder.
After the folder's context menu closes the folder tree selection jumps back to the folder whose contents are showing in the message list. Suggested by Philippe LeCavalier on evolution-list.
Diffstat (limited to 'mail/e-mail-reader.c')
-rw-r--r--mail/e-mail-reader.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/mail/e-mail-reader.c b/mail/e-mail-reader.c
index ff7cd9fd47..2f07a2795a 100644
--- a/mail/e-mail-reader.c
+++ b/mail/e-mail-reader.c
@@ -1934,14 +1934,18 @@ mail_reader_set_folder (EMailReader *reader,
html_display = e_mail_reader_get_html_display (reader);
message_list = e_mail_reader_get_message_list (reader);
+ if (message_list->folder != NULL)
+ mail_sync_folder (message_list->folder, NULL, NULL);
+
+ /* Skip the rest if we're already viewing the folder. */
+ if (g_strcmp0 (folder_uri, message_list->folder_uri) == 0)
+ return;
+
outgoing = folder != NULL && folder_uri != NULL && (
em_utils_folder_is_drafts (folder, folder_uri) ||
em_utils_folder_is_outbox (folder, folder_uri) ||
em_utils_folder_is_sent (folder, folder_uri));
- if (message_list->folder != NULL)
- mail_sync_folder (message_list->folder, NULL, NULL);
-
em_format_format (EM_FORMAT (html_display), NULL, NULL, NULL);
message_list_set_folder (message_list, folder, folder_uri, outgoing);