From cf945fcde2d0ee22a0d63e8ba73f7f198eeeb549 Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Wed, 20 Feb 2002 03:51:20 +0000 Subject: Prompt the user to find out if he/she wants to go to the next folder with 2002-02-19 Jeffrey Stedfast * mail-callbacks.c (confirm_goto_next_folder): Prompt the user to find out if he/she wants to go to the next folder with unread mail in it. (find_current_folder): Find a given CamelFolderInfo node based on a given uri. (find_next_folder_r): Recursively look for a CamelFOlderInfo node which has unread messages. (find_next_folder): Given a currently selected CamelFolderInfo node, look for the next node containing unread messages. (do_evil_kludgy_goto_next_folder_hack): Find the currently selected folder and then find the very next folder after it that contains unread messages and then select it via a CORBA call to the shell. (next_unread_msg): If we fail to find an unread message in the message-list, prompt the user to find out if we should jump to the next fodler containing unread messages. If so, call do_evil_kludgy_goto_next_folder_hack(). * message-list.c (message_list_select): Return a boolean value based on whether the call was successfull or not. * mail-config.c (mail_config_get_confirm_goto_next_folder): (mail_config_set_confirm_goto_next_folder): (mail_config_get_goto_next_folder): (mail_config_set_goto_next_folder): All new functions, yay. (config_read): Read in the confirm_goto_next_folder and goto_next_folder config options. (mail_config_write_on_exit): Same the options here. svn path=/trunk/; revision=15770 --- mail/mail-config.c | 43 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) (limited to 'mail/mail-config.c') diff --git a/mail/mail-config.c b/mail/mail-config.c index a5112b570b..2cc841b0d0 100644 --- a/mail/mail-config.c +++ b/mail/mail-config.c @@ -84,6 +84,8 @@ typedef struct { gboolean prompt_empty_subject; gboolean prompt_only_bcc; gboolean confirm_expunge; + gboolean confirm_goto_next_folder; + gboolean goto_next_folder; gboolean do_seen_timeout; int seen_timeout; gboolean empty_trash_on_exit; @@ -605,6 +607,10 @@ config_read (void) config->paned_size = bonobo_config_get_long_with_default (config->db, "/Mail/Display/paned_size", 200, NULL); + /* Goto next folder when user has reached the bottom of the message-list */ + config->goto_next_folder = bonobo_config_get_boolean_with_default ( + config->db, "/Mail/MessageList/goto_next_folder", FALSE, NULL); + /* Empty Subject */ config->prompt_empty_subject = bonobo_config_get_boolean_with_default ( config->db, "/Mail/Prompts/empty_subject", TRUE, NULL); @@ -617,6 +623,10 @@ config_read (void) config->confirm_expunge = bonobo_config_get_boolean_with_default ( config->db, "/Mail/Prompts/confirm_expunge", TRUE, NULL); + /* Goto next folder */ + config->confirm_goto_next_folder = bonobo_config_get_boolean_with_default ( + config->db, "/Mail/Prompts/confirm_goto_next_folder", TRUE, NULL); + /* PGP/GPG */ config->pgp_path = bonobo_config_get_string (config->db, "/Mail/PGP/path", NULL); @@ -910,7 +920,7 @@ mail_config_write_on_exit (void) /* Format */ bonobo_config_set_boolean (config->db, "/Mail/Format/send_html", config->send_html, NULL); - + /* Confirm Sending Unwanted HTML */ bonobo_config_set_boolean (config->db, "/Mail/Format/confirm_unwanted_html", config->confirm_unwanted_html, NULL); @@ -923,6 +933,10 @@ mail_config_write_on_exit (void) bonobo_config_set_long (config->db, "/Mail/Display/citation_color", config->citation_color, NULL); + /* Goto next folder */ + bonobo_config_set_boolean (config->db, "/Mail/MessageList/goto_next_folder", + config->goto_next_folder, NULL); + /* Empty Subject */ bonobo_config_set_boolean (config->db, "/Mail/Prompts/empty_subject", config->prompt_empty_subject, NULL); @@ -935,6 +949,10 @@ mail_config_write_on_exit (void) bonobo_config_set_boolean (config->db, "/Mail/Prompts/confirm_expunge", config->confirm_expunge, NULL); + /* Goto next folder */ + bonobo_config_set_boolean (config->db, "/Mail/Prompts/confirm_goto_next_folder", + config->confirm_goto_next_folder, NULL); + /* PGP/GPG */ bonobo_config_set_string_wrapper (config->db, "/Mail/PGP/path", config->pgp_path, NULL); @@ -1362,6 +1380,29 @@ mail_config_set_confirm_expunge (gboolean value) config->confirm_expunge = value; } +gboolean +mail_config_get_confirm_goto_next_folder (void) +{ + return config->confirm_goto_next_folder; +} + +void +mail_config_set_confirm_goto_next_folder (gboolean value) +{ + config->confirm_goto_next_folder = value; +} + +gboolean +mail_config_get_goto_next_folder (void) +{ + return config->goto_next_folder; +} + +void +mail_config_set_goto_next_folder (gboolean value) +{ + config->goto_next_folder = value; +} struct { char *bin; -- cgit v1.2.3