[evolution] Bug #680947 - Multiselect doesn't clear message preview panel



commit 194d2cc487fe50c0e2e7dbbb3b27fd30c1746d6b
Author: Dan VrÃtil <dvratil redhat com>
Date:   Tue Aug 7 10:52:36 2012 +0200

    Bug #680947 - Multiselect doesn't clear message preview panel

 mail/e-mail-reader.c |   16 +++++++++++-----
 1 files changed, 11 insertions(+), 5 deletions(-)
---
diff --git a/mail/e-mail-reader.c b/mail/e-mail-reader.c
index 2f3a063..40da437 100644
--- a/mail/e-mail-reader.c
+++ b/mail/e-mail-reader.c
@@ -2943,15 +2943,21 @@ mail_reader_message_selected_cb (EMailReader *reader,
 	priv->restoring_message_selection = priv->folder_was_just_selected;
 	priv->folder_was_just_selected = FALSE;
 
-	/* Skip the timeout if we're restoring the previous message
-	 * selection.  The timeout is there for when we're scrolling
-	 * rapidly through the message list. */
-	if (priv->restoring_message_selection)
+	if (message_list_selected_count (message_list) != 1) {
+		EMailDisplay *display = e_mail_reader_get_mail_display (reader);
+
+		e_mail_display_set_parts_list (display, NULL);
+		e_web_view_clear (E_WEB_VIEW (display));
+	} else if (priv->restoring_message_selection) {
+		/* Skip the timeout if we're restoring the previous message
+		 * selection.  The timeout is there for when we're scrolling
+		 * rapidly through the message list. */
 		mail_reader_message_selected_timeout_cb (reader);
-	else
+	} else {
 		priv->message_selected_timeout_id = g_timeout_add (
 			100, (GSourceFunc)
 			mail_reader_message_selected_timeout_cb, reader);
+	}
 
 	e_mail_reader_changed (reader);
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]