Blob Blame History Raw
--- evolution-2.9.2/plugins/print-message/print-message.c.fix-indic-printing	2005-08-23 23:14:10.000000000 -0400
+++ evolution-2.9.2/plugins/print-message/print-message.c	2006-11-07 13:47:35.000000000 -0500
@@ -83,7 +83,7 @@
 	data->config = e_print_load_config ();
 	data->preview = 0;
 	
-	data->msg = e_msg_composer_get_message (composer, 1);
+	data->msg = e_msg_composer_get_message_print (composer, 1);
 	dialog = (GtkDialog *)e_print_get_dialog_with_config (_("Print Message"), GNOME_PRINT_DIALOG_COPIES, data->config);
 	gtk_dialog_set_default_response(dialog, GNOME_PRINT_DIALOG_RESPONSE_PRINT);
 	e_dialog_set_transient_for ((GtkWindow *) dialog, (GtkWidget *) composer);
@@ -104,7 +104,7 @@
 	data->config = e_print_load_config ();
 	data->preview = 0;
 	
-	data->msg = e_msg_composer_get_message (composer, 1);
+	data->msg = e_msg_composer_get_message_print (composer, 1);
 
 	print_response(NULL, GNOME_PRINT_DIALOG_RESPONSE_PREVIEW, data);
 }
--- evolution-2.9.2/composer/e-msg-composer.h.fix-indic-printing	2005-12-07 03:29:51.000000000 -0500
+++ evolution-2.9.2/composer/e-msg-composer.h	2006-11-07 13:47:35.000000000 -0500
@@ -96,6 +96,8 @@
 									  CamelMimePart     *part);
 CamelMimeMessage        *e_msg_composer_get_message                      (EMsgComposer      *composer,
 									  gboolean           save_html_object_data);
+CamelMimeMessage        *e_msg_composer_get_message_print                (EMsgComposer      *composer,
+                                                                          gboolean           save_html_object_data);
 CamelMimeMessage        *e_msg_composer_get_message_draft                (EMsgComposer      *composer);
 void                     e_msg_composer_show_sig_file                    (EMsgComposer      *composer);
 gboolean                 e_msg_composer_get_send_html                    (EMsgComposer      *composer);
--- evolution-2.9.2/composer/e-msg-composer.c.fix-indic-printing	2006-11-07 13:47:35.000000000 -0500
+++ evolution-2.9.2/composer/e-msg-composer.c	2006-11-07 14:02:39.000000000 -0500
@@ -615,6 +615,7 @@
 	camel_object_unref (stream);
 	
 	camel_data_wrapper_set_mime_type_field (plain, type);
+	camel_data_wrapper_set_mime_type (plain, "text/plain; charset=utf-8");
 	camel_content_type_unref (type);
 	
 	if (p->send_html) {
@@ -5189,6 +5190,49 @@
 }
 
 CamelMimeMessage *
+e_msg_composer_get_message_print (EMsgComposer *composer, gboolean save_html_object_data)
+{
+	EMsgComposer *temp_composer;
+	CamelMimeMessage *msg;
+	GString *flags;
+
+	msg = build_message (composer, save_html_object_data);
+	temp_composer = e_msg_composer_new_with_message (msg);
+	camel_object_unref (msg);
+
+	/* build flags string */
+	flags = g_string_sized_new (128);
+	if (temp_composer->priv->send_html)
+		g_string_append (flags, "text/html");
+	else
+		g_string_append (flags, "text/plain");
+	if (temp_composer->priv->pgp_sign)
+		g_string_append (flags, ", pgp-sign");
+	if (temp_composer->priv->pgp_encrypt)
+		g_string_append (flags, ", pgp-encrypt");
+	if (temp_composer->priv->smime_sign)
+		g_string_append (flags, ", smime-sign");
+	if (temp_composer->priv->smime_encrypt)
+		g_string_append (flags, ", smime-encrypt");
+
+	/* override composer flags */
+	temp_composer->priv->send_html = TRUE;
+	temp_composer->priv->pgp_sign = FALSE;
+	temp_composer->priv->pgp_encrypt = FALSE;
+	temp_composer->priv->smime_sign = FALSE;
+	temp_composer->priv->smime_encrypt = FALSE;
+
+	msg = build_message (temp_composer, save_html_object_data);
+	camel_medium_set_header (CAMEL_MEDIUM (msg),
+		"X-Evolution-Format", flags->str);
+
+	e_msg_composer_delete (temp_composer);
+	g_string_free (flags, TRUE);
+
+	return msg;
+}
+
+CamelMimeMessage *
 e_msg_composer_get_message_draft (EMsgComposer *composer)
 {
 	CamelMimeMessage *msg;