[evolution] Drop support for command-line 'email://' URIs.



commit 974924a8b8ceb3cabd6a4e517b1a1a1285fa137f
Author: Matthew Barnes <mbarnes redhat com>
Date:   Thu May 5 13:52:52 2011 -0400

    Drop support for command-line 'email://' URIs.
    
    I have no idea what this was used for, but it looks way too convoluted
    to be useful anymore.

 modules/mail/e-mail-shell-backend.c |  109 +----------------------------------
 1 files changed, 3 insertions(+), 106 deletions(-)
---
diff --git a/modules/mail/e-mail-shell-backend.c b/modules/mail/e-mail-shell-backend.c
index 3d75b87..c29dbdc 100644
--- a/modules/mail/e-mail-shell-backend.c
+++ b/modules/mail/e-mail-shell-backend.c
@@ -271,122 +271,19 @@ exit:
 	return TRUE;
 }
 
-static void
-mail_shell_backend_handle_email_uri_cb (gchar *folder_uri,
-                                        CamelFolder *folder,
-                                        gpointer user_data)
-{
-	EShellBackend *shell_backend = user_data;
-	EShellSettings *shell_settings;
-	EMailBackend *backend;
-	CamelURL *url = user_data;
-	EShell *shell;
-	const gchar *forward;
-	const gchar *reply;
-	const gchar *uid;
-
-	backend = E_MAIL_BACKEND (shell_backend);
-	shell = e_shell_backend_get_shell (shell_backend);
-	shell_settings = e_shell_get_shell_settings (shell);
-
-	if (folder == NULL) {
-		g_warning ("Could not open folder '%s'", folder_uri);
-		goto exit;
-	}
-
-	forward = camel_url_get_param (url, "forward");
-	reply = camel_url_get_param (url, "reply");
-	uid = camel_url_get_param (url, "uid");
-
-	if (reply != NULL) {
-		EMailReplyType reply_type;
-		EMailReplyStyle reply_style;
-
-		if (g_strcmp0 (reply, "all") == 0)
-			reply_type = E_MAIL_REPLY_TO_ALL;
-		else if (g_strcmp0 (reply, "list") == 0)
-			reply_type = E_MAIL_REPLY_TO_LIST;
-		else
-			reply_type = E_MAIL_REPLY_TO_SENDER;
-
-		reply_style = e_shell_settings_get_int (
-			shell_settings, "mail-reply-style");
-
-		em_utils_reply_to_message (
-			shell, folder, uid, NULL,
-			reply_type, reply_style, NULL);
-
-	} else if (forward != NULL) {
-		EMailForwardStyle forward_style;
-		GPtrArray *uids;
-
-		uids = g_ptr_array_new ();
-		g_ptr_array_add (uids, g_strdup (uid));
-
-		if (g_strcmp0 (forward, "attached") == 0)
-			forward_style = E_MAIL_FORWARD_STYLE_ATTACHED;
-		else if (g_strcmp0 (forward, "inline") == 0)
-			forward_style = E_MAIL_FORWARD_STYLE_INLINE;
-		else if (g_strcmp0 (forward, "quoted") == 0)
-			forward_style = E_MAIL_FORWARD_STYLE_QUOTED;
-		else
-			forward_style = e_shell_settings_get_int (
-				shell_settings, "mail-forward-style");
-
-		em_utils_forward_messages (
-			shell, folder, uids, forward_style);
-
-	} else {
-		GtkWidget *browser;
-
-		/* FIXME Should pass in the shell module. */
-		browser = e_mail_browser_new (backend);
-		e_mail_reader_set_folder (
-			E_MAIL_READER (browser), folder);
-		e_mail_reader_set_message (E_MAIL_READER (browser), uid);
-		gtk_widget_show (browser);
-	}
-
-exit:
-	camel_url_free (url);
-}
-
 static gboolean
 mail_shell_backend_handle_uri_cb (EShell *shell,
                                   const gchar *uri,
                                   EMailShellBackend *mail_shell_backend)
 {
-	EMailBackend *backend;
-	EMailSession *session;
-	gboolean handled = TRUE;
-
-	backend = E_MAIL_BACKEND (mail_shell_backend);
-	session = e_mail_backend_get_session (backend);
+	gboolean handled = FALSE;
 
 	if (g_str_has_prefix (uri, "mailto:";)) {
 		if (em_utils_check_user_can_send_mail ())
 			em_utils_compose_new_message_with_mailto (
 				shell, uri, NULL);
-
-	} else if (g_str_has_prefix (uri, "email:")) {
-		CamelURL *url;
-
-		url = camel_url_new (uri, NULL);
-		if (camel_url_get_param (url, "uid") != NULL) {
-			gchar *curi = em_uri_to_camel (uri);
-
-			mail_get_folder (
-				session, curi, 0,
-				mail_shell_backend_handle_email_uri_cb,
-				mail_shell_backend, mail_msg_unordered_push);
-			g_free (curi);
-
-		} else {
-			g_warning ("Email URI's must include a uid parameter");
-			camel_url_free (url);
-		}
-	} else
-		handled = FALSE;
+		handled = TRUE;
+	}
 
 	return handled;
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]