diff options
author | Matthew Barnes <mbarnes@src.gnome.org> | 2008-08-19 00:18:42 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2008-08-19 00:18:42 +0800 |
commit | 4187293731274274e4283d9039f6e30c95578118 (patch) | |
tree | ab8ce6e6bc9316846097b827157e0f664cf57634 /mail | |
parent | 28b28bf057056d2aa28458b322319bf679608ae5 (diff) | |
download | gsoc2013-evolution-4187293731274274e4283d9039f6e30c95578118.tar.gz gsoc2013-evolution-4187293731274274e4283d9039f6e30c95578118.tar.zst gsoc2013-evolution-4187293731274274e4283d9039f6e30c95578118.zip |
Merge revisions 35993:36015 from trunk.
Adapt recent "crash recovery" changes to new architecture.
svn path=/branches/kill-bonobo/; revision=36018
Diffstat (limited to 'mail')
-rw-r--r-- | mail/ChangeLog | 27 | ||||
-rw-r--r-- | mail/default/C/Inbox | 33 | ||||
-rw-r--r-- | mail/em-folder-browser.c | 33 | ||||
-rw-r--r-- | mail/em-folder-browser.h | 2 | ||||
-rw-r--r-- | mail/mail-component.c | 5 |
5 files changed, 60 insertions, 40 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index df3c3b1f60..64a817c749 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,30 @@ +2008-08-18 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes part of bug #508732 + + * mail-component.c (impl_createView): + Add a "select_item" argument for crash recovery, which we forward + to EMFolderBrowser as a "suppress_message_selection" flag. + + * em-folder-browser.c (emfb_set_folder): + Suppress automatic message selection if we are recovering from a + crash. + +2008-08-16 Matthew Barnes <mbarnes@redhat.com> + + ** Fixes bug #513363 + + * default/C/Inbox: + Remove the outdated "New Features" list, and well as the incorrect + "Evolution team" email address. + +2008-08-14 Sebastien Bacher <seb128@ubuntu.com> + + ** Fix for bug #547805 + + * em-popup.c: (emp_standard_menu_factory): + don't filter applications using g_app_info_should_show() + 2008-08-13 Moritz Mertinkat <moritz@mertinkat.net> * em-format-html.c: Added meaningful user agent for HTTP requests diff --git a/mail/default/C/Inbox b/mail/default/C/Inbox index cfa231a7f7..920914c2cb 100644 --- a/mail/default/C/Inbox +++ b/mail/default/C/Inbox @@ -12,7 +12,7 @@ Received: from smtp.novell.com (HELO localhost) (141.154.95.10) by From: "The Evolution Team" <evolution@novell.com> To: Evolution Users <evolution@novell.com> Content-Type: multipart/related; type="multipart/alternative"; boundary="=-t4dRE6cqcdSBHOrMdTQ1" -X-Mailer: Evolution 2.10.0 +X-Mailer: Evolution 2.24.0 Date: 14 March 2007 12:00:00 +0000 Message-Id: <1001418302.27070.20.camel@spectrolite> Mime-Version: 1.0 @@ -47,15 +47,6 @@ Getting Started For a complete guide to Evolution, select "Table of Contents" from the "Help" menu, or press the F1 key. -New Features - - Evolution 2.10 brings you - - # Integration with gtk-print - # Customizable fetching of IMAP headers. - # Faster Performance, lots of Memory Fixes and Memory Reduction - # Lots of Bug fixes and lots of other Improvements - Bug Reporting Bugs should be reported to http://bugzilla.gnome.org. @@ -71,7 +62,6 @@ More Information Yours Sincerely, The Evolution Team -evolution@novell.com --=-2gZ1roA/HoYrlRDVGyiM @@ -129,26 +119,6 @@ Getting Started </blockquote> <h2> -New Features -</h2> - -<blockquote> - Evolution 2.10 brings you - <ul> - <li> - Integration with gtk-print - </li><li> - Customizable fetching of IMAP headers - </li><li> - Faster Performance, lots of Memory Fixes and Memory Reduction - </li><li> - Lots of Bug fixes and lots of other Improvements - </li> - </ul> -<br> -</blockquote> - -<h2> Bug Reporting </h2> <blockquote> @@ -176,7 +146,6 @@ More Information Yours Sincerely, <br> The Evolution Team -<br><a href="mailto:evolution@novell.com">evolution@novell.com</a> </BODY> </HTML> diff --git a/mail/em-folder-browser.c b/mail/em-folder-browser.c index 4b25b560f7..a427c0f03e 100644 --- a/mail/em-folder-browser.c +++ b/mail/em-folder-browser.c @@ -122,6 +122,7 @@ struct _EMFolderBrowserPrivate { guint folder_changed_id; guint show_wide:1; + guint suppress_message_selection:1; gboolean scope_restricted; EMMenu *menu; /* toplevel menu manager */ @@ -2001,6 +2002,7 @@ emfb_set_folder(EMFolderView *emfv, CamelFolder *folder, const char *uri) { EMFolderBrowser *emfb = (EMFolderBrowser *) emfv; struct _EMFolderBrowserPrivate *p = emfb->priv; + gboolean different_folder; message_list_freeze(emfv->list); @@ -2019,6 +2021,10 @@ emfb_set_folder(EMFolderView *emfv, CamelFolder *folder, const char *uri) emfb->priv->folder_changed_id = 0; } + different_folder = + emfb->view.folder != NULL && + folder != emfb->view.folder; + emfb_parent->set_folder(emfv, folder, uri); /* This is required since we get activated the first time @@ -2102,15 +2108,20 @@ emfb_set_folder(EMFolderView *emfv, CamelFolder *folder, const char *uri) e_search_bar_paint ((ESearchBar *)emfb->search); } - /* set the query manually, so we dont pop up advanced or saved search stuff */ + /* This function gets triggered several times at startup, + * so we don't want to reset the message suppression state + * unless we're actually switching to a different folder. */ + if (different_folder) + p->suppress_message_selection = FALSE; - if ((sstate = camel_object_meta_get (folder, "evolution:selected_uid"))) { - g_free (emfb->priv->select_uid); - emfb->priv->select_uid = sstate; - } else { - g_free(p->select_uid); - p->select_uid = NULL; - } + if (!p->suppress_message_selection) + sstate = camel_object_meta_get ( + folder, "evolution:selected_uid"); + else + sstate = NULL; + + g_free (p->select_uid); + p->select_uid = sstate; if (emfv->list->cursor_uid == NULL && emfb->priv->list_built_id == 0) p->list_built_id = g_signal_connect(emfv->list, "message_list_built", G_CALLBACK (emfb_list_built), emfv); @@ -2222,3 +2233,9 @@ emfb_activate(EMFolderView *emfv, BonoboUIComponent *uic, int act) emfb_parent->activate(emfv, uic, act); } } + +void +em_folder_browser_suppress_message_selection (EMFolderBrowser *emfb) +{ + emfb->priv->suppress_message_selection = TRUE; +} diff --git a/mail/em-folder-browser.h b/mail/em-folder-browser.h index 4d501b04b6..0af0355799 100644 --- a/mail/em-folder-browser.h +++ b/mail/em-folder-browser.h @@ -57,6 +57,8 @@ GtkWidget *em_folder_browser_new(void); void em_folder_browser_show_preview(EMFolderBrowser *emfv, gboolean state); void em_folder_browser_show_wide(EMFolderBrowser *emfv, gboolean state); gboolean em_folder_browser_get_wide(EMFolderBrowser *emfv); +void em_folder_browser_suppress_message_selection(EMFolderBrowser *emfb); + #ifdef __cplusplus } #endif /* __cplusplus */ diff --git a/mail/mail-component.c b/mail/mail-component.c index f18ccb08d0..86a3388b1f 100644 --- a/mail/mail-component.c +++ b/mail/mail-component.c @@ -711,6 +711,7 @@ enable_folder_tree (GtkWidget *emfb, GtkWidget *emft) static GNOME_Evolution_ComponentView impl_createView (PortableServer_Servant servant, GNOME_Evolution_ShellView parent, + CORBA_boolean select_item, CORBA_Environment *ev) { MailComponent *mail_component = MAIL_COMPONENT (bonobo_object_from_servant (servant)); @@ -726,6 +727,10 @@ impl_createView (PortableServer_Servant servant, view_widget = em_folder_browser_new (); + if (!select_item) + em_folder_browser_suppress_message_selection ( + (EMFolderBrowser *) view_widget); + tree_widget = (GtkWidget *) em_folder_tree_new_with_model (priv->model); em_folder_tree_set_excluded ((EMFolderTree *) tree_widget, 0); em_folder_tree_enable_drag_and_drop ((EMFolderTree *) tree_widget); |