diff options
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 10 | ||||
-rw-r--r-- | mail/folder-browser-factory.c | 3 | ||||
-rw-r--r-- | mail/message-list.c | 8 | ||||
-rw-r--r-- | mail/message-list.h | 2 |
4 files changed, 23 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 1b1bac282f..4a461578b6 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,5 +1,15 @@ 2003-03-26 Jeffrey Stedfast <fejj@ximian.com> + Fixes bug #40074. + + * folder-browser-factory.c (control_deactivate): Save message-list + state. + + * message-list.c (message_list_save_state): Save the various + states. + +2003-03-26 Jeffrey Stedfast <fejj@ximian.com> + Fixes for bug #39870 * message-browser.c (transfer_msg_done): Close the diff --git a/mail/folder-browser-factory.c b/mail/folder-browser-factory.c index b8b1d2a304..9f35b88db8 100644 --- a/mail/folder-browser-factory.c +++ b/mail/folder-browser-factory.c @@ -132,6 +132,9 @@ control_deactivate (BonoboControl *control, if (fb->folder) mail_sync_folder (fb->folder, NULL, NULL); + if (fb->message_list) + message_list_save_state (fb->message_list); + folder_browser_set_ui_component (fb, NULL); folder_browser_set_shell_view (fb, CORBA_OBJECT_NIL); diff --git a/mail/message-list.c b/mail/message-list.c index d5c61ff554..bbe2b4fdb5 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -1207,6 +1207,14 @@ save_tree_state(MessageList *ml) g_free(filename); } + +void +message_list_save_state (MessageList *ml) +{ + save_tree_state (ml); + hide_save_state (ml); +} + static void message_list_setup_etree (MessageList *message_list, gboolean outgoing) { diff --git a/mail/message-list.h b/mail/message-list.h index 78af58644d..de2ddc199f 100644 --- a/mail/message-list.h +++ b/mail/message-list.h @@ -158,6 +158,8 @@ void message_list_set_threaded(MessageList *ml, gboolean threaded); void message_list_set_hidedeleted(MessageList *ml, gboolean hidedeleted); void message_list_set_search(MessageList *ml, const char *search); +void message_list_save_state (MessageList *ml); + #define MESSAGE_LIST_LOCK(m, l) g_mutex_lock(((MessageList *)m)->l) #define MESSAGE_LIST_UNLOCK(m, l) g_mutex_unlock(((MessageList *)m)->l) |