aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorSrinivasa Ragavan <sragavan@src.gnome.org>2007-08-08 14:47:01 +0800
committerSrinivasa Ragavan <sragavan@src.gnome.org>2007-08-08 14:47:01 +0800
commit0014b8c62e298231da5180a298360a0a24fb2095 (patch)
treef0cd1b09673d42f68115834f1ee2a3e180df31eb /mail
parentfbc08b4c26608b550a78366a007fba27c451dae5 (diff)
downloadgsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.tar
gsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.tar.gz
gsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.tar.bz2
gsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.tar.lz
gsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.tar.xz
gsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.tar.zst
gsoc2013-evolution-0014b8c62e298231da5180a298360a0a24fb2095.zip
Added a command line option to disable preview/selection for crash on select.
svn path=/trunk/; revision=33967
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog7
-rw-r--r--mail/em-folder-browser.c10
-rw-r--r--mail/evolution-mail.schemas.in15
3 files changed, 32 insertions, 0 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index ae9e32289d..72e7d5fcce 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,10 @@
+2007-08-08 Srinivasa Ragavan <sragavan@novell.com>
+
+ * em-folder-browser.c: (emfb_set_folder): Use the gconf key to
+ unselect mail and preview.
+ * evolution-mail.schemas.in: Add a new gconf key to have a safe view
+ if the selected mail crashes.
+
2007-08-07 Srinivasa Ragavan <sragavan@novell.com>
** Fix for bug #464312
diff --git a/mail/em-folder-browser.c b/mail/em-folder-browser.c
index 7af149fba5..3778a5f5f4 100644
--- a/mail/em-folder-browser.c
+++ b/mail/em-folder-browser.c
@@ -1894,8 +1894,18 @@ emfb_set_folder(EMFolderView *emfv, CamelFolder *folder, const char *uri)
if (folder) {
char *sstate;
int state;
+ gboolean safe;
GConfClient *gconf = mail_config_get_gconf_client();
+ safe = gconf_client_get_bool (gconf, "/apps/evolution/mail/display/safe_list", NULL);
+ if (safe) {
+ if (camel_object_meta_set(emfv->folder, "evolution:show_preview", "0") &&
+ camel_object_meta_set(emfv->folder, "evolution:selected_uid", NULL)) {
+ camel_object_state_write(emfv->folder);
+ }
+ gconf_client_set_bool (gconf, "/apps/evolution/mail/display/safe_list", FALSE, NULL);
+ }
+
mail_refresh_folder(folder, NULL, NULL);
emfb->priv->folder_changed_id = camel_object_hook_event(folder, "folder_changed",
diff --git a/mail/evolution-mail.schemas.in b/mail/evolution-mail.schemas.in
index cf8fd538fe..df906cd5cd 100644
--- a/mail/evolution-mail.schemas.in
+++ b/mail/evolution-mail.schemas.in
@@ -401,6 +401,21 @@
</schema>
<schema>
+ <key>/schemas/apps/evolution/mail/display/safe_list</key>
+ <applyto>/apps/evolution/mail/display/safe_list</applyto>
+ <owner>evolution-mail</owner>
+ <type>bool</type>
+ <default>false</default>
+ <locale name="C">
+ <short>Hides the per-folder preview and removes the selection</short>
+ <long>
+ This should be a once-readable option and resetted to false after read. This unselects the
+ mail in the list and removes the preview for that folder.
+ </long>
+ </locale>
+ </schema>
+
+ <schema>
<key>/schemas/apps/evolution/mail/display/paned_size</key>
<applyto>/apps/evolution/mail/display/paned_size</applyto>
<owner>evolution-mail</owner>