aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog7
-rw-r--r--mail/mail-ops.c17
2 files changed, 16 insertions, 8 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 33c925ccca..a7f41bcbb7 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,7 +1,12 @@
2000-08-09 Jeffrey Stedfast <fejj@helixcode.com>
+ * mail-ops.c (real_view_msg): Create a new FolderBrowser for each
+ message being opened in a new window. Also set the
+ message_list->cursor_uid and mail_display->current_message to the
+ appropriate values.
+
* message-list.c (on_right_click): Nicify a little, add in a menu
- separator between VFolder and Filter stuff
+ separator between VFolder and Filter stuff.
* mail-ops.c (real_view_msg): Set the UID of the message that is
being displayed
diff --git a/mail/mail-ops.c b/mail/mail-ops.c
index c8357a0a3a..7afd630899 100644
--- a/mail/mail-ops.c
+++ b/mail/mail-ops.c
@@ -1088,6 +1088,7 @@ static void
real_view_msg (MessageList *ml, const char *uid, gpointer user_data)
{
struct view_msg_data *data = user_data;
+ FolderBrowser *fb;
CamelMimeMessage *msg;
GtkWidget *view;
@@ -1095,9 +1096,14 @@ real_view_msg (MessageList *ml, const char *uid, gpointer user_data)
return;
msg = camel_folder_get_message (ml->folder, uid, data->ex);
-
- data->fb->message_list->cursor_uid = uid;
- view = mail_view_create (msg, data->fb);
+
+ fb = FOLDER_BROWSER (folder_browser_new ());
+ folder_browser_set_uri (fb, data->fb->uri);
+
+ fb->message_list->cursor_uid = uid;
+ fb->mail_display->current_message = msg;
+
+ view = mail_view_create (msg, fb);
gtk_widget_show (view);
}
@@ -1113,10 +1119,7 @@ view_msg (GtkWidget *widget, gpointer user_data)
camel_exception_init (&ex);
- folder_browser = FOLDER_BROWSER (folder_browser_new ());
- folder_browser_set_uri (folder_browser, fb->uri);
-
- data.fb = folder_browser;
+ data.fb = fb;
data.ex = &ex;
ml = fb->message_list;