[anjal] Update Evo stable/trunk for Anjal.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: svn-commits-list gnome org
- Subject: [anjal] Update Evo stable/trunk for Anjal.
- Date: Mon, 11 May 2009 07:33:19 -0400 (EDT)
commit c522d6311bd98e4da2d74edde585c8d71a246c87
Author: Srinivasa Ragavan <sragavan novell com>
Date: Mon May 11 17:01:43 2009 +0530
Update Evo stable/trunk for Anjal.
---
evo-anjal.patch | 457 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 433 insertions(+), 24 deletions(-)
diff --git a/evo-anjal.patch b/evo-anjal.patch
index 7b9edd6..dab06aa 100755
--- a/evo-anjal.patch
+++ b/evo-anjal.patch
@@ -67,10 +67,73 @@ index 74fda9a..f8c6dc6 100644
/* Standard GObject macros */
diff --git a/composer/e-composer-header-table.c b/composer/e-composer-header-table.c
-index 461c11e..4f2c6e1 100644
+index 461c11e..9612993 100644
--- a/composer/e-composer-header-table.c
+++ b/composer/e-composer-header-table.c
-@@ -649,7 +649,7 @@ composer_header_table_init (EComposerHeaderTable *table)
+@@ -28,6 +28,8 @@
+ #include "e-composer-post-header.h"
+ #include "e-composer-text-header.h"
+
++extern gboolean composer_lite;
++
+ #define E_COMPOSER_HEADER_TABLE_GET_PRIVATE(obj) \
+ (G_TYPE_INSTANCE_GET_PRIVATE \
+ ((obj), E_TYPE_COMPOSER_HEADER_TABLE, EComposerHeaderTablePrivate))
+@@ -90,6 +92,7 @@ struct _EComposerHeaderTablePrivate {
+ GtkWidget *signature_label;
+ GtkWidget *signature_combo_box;
+ ENameSelector *name_selector;
++ GtkHBox *actions_container;
+ };
+
+ static gpointer parent_class;
+@@ -271,8 +274,16 @@ composer_header_table_constructor (GType type,
+ gtk_table_attach (
+ GTK_TABLE (object), priv->headers[ii]->input_widget,
+ 1, 4, ii, ii + 1, GTK_FILL | GTK_EXPAND, 0, 0, 3);
++ if (composer_lite && priv->headers[ii]->action_widget) {
++ /* Pack the widgets to the end. Helps formatting when hiding the From field */
++ gtk_box_pack_end (priv->actions_container, priv->headers[ii]->action_widget,
++ FALSE, FALSE, 6);
++ }
+ }
+
++ if (composer_lite)
++ gtk_widget_show_all (priv->actions_container);
++
+ ii = E_COMPOSER_HEADER_FROM;
+
+ /* Leave room in the "From" row for signature stuff. */
+@@ -289,6 +300,19 @@ composer_header_table_constructor (GType type,
+ GTK_TABLE (object), priv->signature_combo_box,
+ 3, 4, ii, ii + 1, 0, 0, 0, 3);
+
++ if (composer_lite) {
++ ii = E_COMPOSER_HEADER_TO;
++
++ /* Leave room for the action buttons. */
++ gtk_container_child_set (
++ GTK_CONTAINER (object),
++ priv->headers[ii]->input_widget,
++ "right-attach", 2, NULL);
++
++ gtk_table_attach (GTK_TABLE (object), priv->actions_container, 2, 4, E_COMPOSER_HEADER_TO,
++ E_COMPOSER_HEADER_TO + 1, GTK_FILL, 0, 0, 3);
++ }
++
+ return object;
+ }
+
+@@ -640,6 +664,8 @@ composer_header_table_init (EComposerHeaderTable *table)
+ name_selector = e_name_selector_new ();
+ table->priv->name_selector = name_selector;
+
++ table->priv->actions_container = gtk_hbox_new (FALSE, 6);
++
+ header = e_composer_from_header_new (_("Fr_om:"));
+ composer_header_table_bind_header ("account", "changed", header);
+ composer_header_table_bind_header ("account-list", "refreshed", header);
+@@ -649,21 +675,21 @@ composer_header_table_init (EComposerHeaderTable *table)
composer_header_table_from_changed_cb), table);
table->priv->headers[E_COMPOSER_HEADER_FROM] = header;
@@ -79,7 +142,24 @@ index 461c11e..4f2c6e1 100644
composer_header_table_bind_header ("reply-to", "changed", header);
table->priv->headers[E_COMPOSER_HEADER_REPLY_TO] = header;
-@@ -672,7 +672,7 @@ composer_header_table_init (EComposerHeaderTable *table)
+- header = e_composer_name_header_new (_("_To:"), name_selector);
++ header = e_composer_name_header_new_with_label (_("_To:"), name_selector);
+ e_composer_header_set_input_tooltip (header, HEADER_TOOLTIP_TO);
+ composer_header_table_bind_header ("destinations-to", "changed", header);
+ table->priv->headers[E_COMPOSER_HEADER_TO] = header;
+
+- header = e_composer_name_header_new (_("_Cc:"), name_selector);
++ header = e_composer_name_header_new_with_action (_("_Cc:"), _("Show CC"), name_selector);
+ e_composer_header_set_input_tooltip (header, HEADER_TOOLTIP_CC);
+ composer_header_table_bind_header ("destinations-cc", "changed", header);
+ table->priv->headers[E_COMPOSER_HEADER_CC] = header;
+
+- header = e_composer_name_header_new (_("_Bcc:"), name_selector);
++ header = e_composer_name_header_new_with_action (_("_Bcc:"), _("Show BCC"), name_selector);
+ e_composer_header_set_input_tooltip (header, HEADER_TOOLTIP_BCC);
+ composer_header_table_bind_header ("destinations-bcc", "changed", header);
+ table->priv->headers[E_COMPOSER_HEADER_BCC] = header;
+@@ -672,7 +698,7 @@ composer_header_table_init (EComposerHeaderTable *table)
composer_header_table_bind_header ("post-to", "changed", header);
table->priv->headers[E_COMPOSER_HEADER_POST_TO] = header;
@@ -89,7 +169,7 @@ index 461c11e..4f2c6e1 100644
table->priv->headers[E_COMPOSER_HEADER_SUBJECT] = header;
diff --git a/composer/e-composer-header.c b/composer/e-composer-header.c
-index 8cbcf64..1ed21b6 100644
+index 8cbcf64..fbb58f1 100644
--- a/composer/e-composer-header.c
+++ b/composer/e-composer-header.c
@@ -1,3 +1,7 @@
@@ -119,7 +199,7 @@ index 8cbcf64..1ed21b6 100644
};
static gpointer parent_class;
-@@ -54,6 +62,14 @@ composer_header_button_clicked_cb (GtkButton *button,
+@@ -54,6 +62,20 @@ composer_header_button_clicked_cb (GtkButton *button,
g_signal_emit (header, signal_ids[CLICKED], 0);
}
@@ -131,31 +211,44 @@ index 8cbcf64..1ed21b6 100644
+ e_composer_header_set_visible (header, TRUE);
+}
+
++static void
++link_clicked_cb (GtkLinkButton *button, const gchar *link_, gpointer user_data)
++{
++ return;
++}
++
static GObject *
composer_header_constructor (GType type,
guint n_construct_properties,
-@@ -81,6 +97,20 @@ composer_header_constructor (GType type,
+@@ -81,6 +103,27 @@ composer_header_constructor (GType type,
gtk_label_set_mnemonic_widget (
GTK_LABEL (widget), header->input_widget);
}
+
+ if (header->priv->addaction) {
-+ header->action_widget = gtk_link_button_new_with_label (header->priv->label,
-+ header->priv->addaction_text);
++ GtkWidget *box, *tmp;
++ char *str;
++
++ header->action_widget = gtk_button_new ();
++ box = gtk_hbox_new (FALSE, 0);
++ tmp = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON);
++ gtk_box_pack_start(box, tmp, FALSE, FALSE, 3);
++ tmp = gtk_label_new (NULL);
++ str = g_strdup_printf ("<span foreground='blue' underline='single' underline_color='blue' >%s</span>", header->priv->addaction_text);
++ gtk_label_set_markup(tmp, str);
++ gtk_box_pack_start(box, tmp, FALSE, FALSE, 3);
++ gtk_container_add(header->action_widget, box);
++ gtk_widget_show_all(header->action_widget);
+ g_signal_connect (
+ header->action_widget, "clicked",
+ G_CALLBACK (composer_header_addaction_clicked_cb),
+ header);
-+
-+ /*TODO : Add + icon*/
-+ /* widget = gtk_image_new_from_stock (GTK_STOCK_ADD, GTK_ICON_SIZE_MENU); */
-+ /* gtk_button_set_image (header->action_widget, widget); */
+ }
+
header->title_widget = g_object_ref_sink (widget);
g_free (header->priv->label);
-@@ -104,6 +134,14 @@ composer_header_set_property (GObject *object,
+@@ -104,6 +147,14 @@ composer_header_set_property (GObject *object,
priv->button = g_value_get_boolean (value);
return;
@@ -170,7 +263,7 @@ index 8cbcf64..1ed21b6 100644
case PROP_LABEL: /* construct only */
priv->label = g_value_dup_string (value);
return;
-@@ -124,6 +162,15 @@ composer_header_set_property (GObject *object,
+@@ -124,6 +175,15 @@ composer_header_set_property (GObject *object,
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
}
@@ -186,7 +279,7 @@ index 8cbcf64..1ed21b6 100644
static void
composer_header_get_property (GObject *object,
guint property_id,
-@@ -139,6 +186,15 @@ composer_header_get_property (GObject *object,
+@@ -139,6 +199,15 @@ composer_header_get_property (GObject *object,
g_value_set_boolean (value, priv->button);
return;
@@ -202,7 +295,7 @@ index 8cbcf64..1ed21b6 100644
case PROP_LABEL: /* construct only */
g_value_take_string (
value, e_composer_header_get_label (
-@@ -207,6 +263,28 @@ composer_header_class_init (EComposerHeaderClass *class)
+@@ -207,6 +276,28 @@ composer_header_class_init (EComposerHeaderClass *class)
g_object_class_install_property (
object_class,
@@ -332,6 +425,138 @@ index 04f7100..92a379b 100644
ENameSelector * e_composer_name_header_get_name_selector
(EComposerNameHeader *header);
EDestination ** e_composer_name_header_get_destinations
+diff --git a/composer/e-composer-private.c b/composer/e-composer-private.c
+index d47a372..a2dfd63 100644
+--- a/composer/e-composer-private.c
++++ b/composer/e-composer-private.c
+@@ -17,6 +17,7 @@
+
+ #include "e-composer-private.h"
+ #include "e-util/e-util-private.h"
++#include "e-util/e-icon-factory.h"
+
+ static void
+ composer_setup_charset_menu (EMsgComposer *composer)
+@@ -87,6 +88,7 @@ e_composer_private_init (EMsgComposer *composer)
+ GtkWidget *expander;
+ GtkWidget *container;
+ GtkWidget *send_widget;
++ GtkWidget *exp_box;
+ const gchar *path;
+ gchar *filename;
+ GError *error = NULL;
+@@ -94,6 +96,15 @@ e_composer_private_init (EMsgComposer *composer)
+ editor = GTKHTML_EDITOR (composer);
+ manager = gtkhtml_editor_get_ui_manager (editor);
+
++ if (composer->lite) {
++ widget = gtkhtml_editor_get_managed_widget (editor, "/main-menu");
++ gtk_widget_hide (widget);
++ widget = gtkhtml_editor_get_managed_widget (editor, "/main-toolbar");
++ gtk_toolbar_set_style (widget, GTK_TOOLBAR_BOTH_HORIZ);
++ gtk_widget_hide (widget);
++
++ }
++
+ priv->charset_actions = gtk_action_group_new ("charset");
+ priv->composer_actions = gtk_action_group_new ("composer");
+
+@@ -126,6 +137,62 @@ e_composer_private_init (EMsgComposer *composer)
+ send_widget = gtk_ui_manager_get_widget (manager, path);
+ gtk_tool_item_set_is_important (GTK_TOOL_ITEM (send_widget), TRUE);
+
++ exp_box = gtk_hbox_new (FALSE, 0);
++ gtk_widget_show(exp_box);
++ if (composer->lite) {
++ GtkWidget *tmp, *tmp1, *tmp_box, *align;
++
++ tmp_box = gtk_hbox_new (FALSE, 0);
++
++ tmp = gtk_hbox_new (FALSE, 0);
++ tmp1 = gtk_image_new_from_pixbuf (e_icon_factory_get_icon("mail-send", E_ICON_SIZE_BUTTON));
++ gtk_box_pack_start (tmp, tmp1, FALSE, FALSE, 0);
++ tmp1 = gtk_label_new_with_mnemonic (_("S_end"));
++ gtk_box_pack_start (tmp, tmp1, FALSE, FALSE, 6);
++ gtk_widget_show_all(tmp);
++ gtk_widget_reparent (send_widget, tmp_box);
++ gtk_box_set_child_packing (tmp_box, send_widget, FALSE, FALSE, 6, GTK_PACK_END);
++ gtk_tool_item_set_is_important (GTK_TOOL_ITEM (send_widget), TRUE);
++ send_widget = gtk_bin_get_child (send_widget);
++ gtk_container_remove(send_widget, gtk_bin_get_child (send_widget));
++ gtk_container_add(send_widget, tmp);
++ gtk_button_set_relief (send_widget, GTK_RELIEF_NORMAL);
++
++ path = "/main-toolbar/pre-main-toolbar/save-draft";
++ send_widget = gtk_ui_manager_get_widget (manager, path);
++ tmp = gtk_hbox_new (FALSE, 0);
++ tmp1 = gtk_image_new_from_pixbuf (e_icon_factory_get_icon(GTK_STOCK_SAVE, E_ICON_SIZE_BUTTON));
++ gtk_box_pack_start (tmp, tmp1, FALSE, FALSE, 0);
++ tmp1 = gtk_label_new_with_mnemonic (_("Save draft"));
++ gtk_box_pack_start (tmp, tmp1, FALSE, FALSE, 3);
++ gtk_widget_show_all(tmp);
++ gtk_widget_reparent (send_widget, tmp_box);
++ gtk_box_set_child_packing (tmp_box, send_widget, FALSE, FALSE, 6, GTK_PACK_END);
++ gtk_tool_item_set_is_important (GTK_TOOL_ITEM (send_widget), TRUE);
++ send_widget = gtk_bin_get_child (send_widget);
++ gtk_container_remove(send_widget, gtk_bin_get_child (send_widget));
++ gtk_container_add(send_widget, tmp);
++ gtk_button_set_relief (send_widget, GTK_RELIEF_NORMAL);
++
++ path = "/main-toolbar/pre-main-toolbar/attach";
++ send_widget = gtk_ui_manager_get_widget (manager, path);
++ tmp = gtk_hbox_new (FALSE, 0);
++ tmp1 = gtk_image_new_from_pixbuf (e_icon_factory_get_icon("gtk-add", E_ICON_SIZE_BUTTON));
++ gtk_box_pack_start (tmp, tmp1, FALSE, FALSE, 0);
++ tmp1 = gtk_label_new_with_mnemonic (_("Add attachment"));
++ gtk_box_pack_start (tmp, tmp1, FALSE, FALSE, 3);
++ gtk_widget_show_all(tmp);
++ gtk_widget_reparent (send_widget, tmp_box);
++ gtk_box_set_child_packing (tmp_box, send_widget, FALSE, FALSE, 6, GTK_PACK_START);
++ gtk_tool_item_set_is_important (GTK_TOOL_ITEM (send_widget), TRUE);
++ send_widget = gtk_bin_get_child (send_widget);
++ gtk_container_remove(send_widget, gtk_bin_get_child (send_widget));
++ gtk_container_add(send_widget, tmp);
++ gtk_button_set_relief (send_widget, GTK_RELIEF_NORMAL);
++
++ gtk_widget_show(tmp_box);
++ gtk_box_pack_end (exp_box, tmp_box, TRUE, TRUE, 0);
++ }
+ composer_setup_charset_menu (composer);
+
+ if (error != NULL) {
+@@ -139,7 +206,11 @@ e_composer_private_init (EMsgComposer *composer)
+ widget = e_composer_header_table_new ();
+ gtk_container_set_border_width (GTK_CONTAINER (widget), 6);
+ gtk_box_pack_start (GTK_BOX (editor->vbox), widget, FALSE, FALSE, 0);
+- gtk_box_reorder_child (GTK_BOX (editor->vbox), widget, 2);
++ if (composer->lite)
++ gtk_box_reorder_child (GTK_BOX (editor->vbox), widget, 0);
++ else
++ gtk_box_reorder_child (GTK_BOX (editor->vbox), widget, 2);
++
+ priv->header_table = g_object_ref (widget);
+ gtk_widget_show (widget);
+
+@@ -154,6 +225,8 @@ e_composer_private_init (EMsgComposer *composer)
+ gtk_widget_show (widget);
+ expander = widget;
+
++ g_object_set_data (composer, "vbox", editor->vbox);
++
+ widget = gtk_scrolled_window_new (NULL, NULL);
+ gtk_scrolled_window_set_policy (
+ GTK_SCROLLED_WINDOW (widget),
+@@ -172,7 +245,9 @@ e_composer_private_init (EMsgComposer *composer)
+ gtk_widget_show (widget);
+
+ widget = gtk_hbox_new (FALSE, 0);
+- gtk_expander_set_label_widget (GTK_EXPANDER (expander), widget);
++ gtk_widget_set_size_request (exp_box, G_MAXINT, -1);
++ gtk_expander_set_label_widget (GTK_EXPANDER (expander), exp_box);
++ gtk_box_pack_start (exp_box, widget, FALSE, FALSE, 0);
+ gtk_widget_show (widget);
+ container = widget;
+
diff --git a/composer/e-composer-text-header.c b/composer/e-composer-text-header.c
index 2945720..e676ef9 100644
--- a/composer/e-composer-text-header.c
@@ -406,6 +631,87 @@ index c0c4708..79e972d 100644
const gchar * e_composer_text_header_get_text (EComposerTextHeader *header);
void e_composer_text_header_set_text (EComposerTextHeader *header,
const gchar *text);
+diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c
+index f06dc85..dc59953 100644
+--- a/composer/e-msg-composer.c
++++ b/composer/e-msg-composer.c
+@@ -185,6 +185,8 @@ static struct {
+ { "text/calendar", NULL, GDK_ACTION_COPY }
+ };
+
++gboolean composer_lite = FALSE;
++
+ static gpointer parent_class;
+ static guint signals[LAST_SIGNAL];
+
+@@ -2800,6 +2802,7 @@ msg_composer_init (EMsgComposer *composer)
+ GtkhtmlEditor *editor;
+ GtkHTML *html;
+
++ composer->lite = composer_lite;
+ composer->priv = E_MSG_COMPOSER_GET_PRIVATE (composer);
+
+ e_composer_private_init (composer);
+@@ -3050,6 +3053,32 @@ is_special_header (const gchar *hdr_name)
+ return FALSE;
+ }
+
++
++void
++e_msg_composer_set_lite (void)
++{
++ composer_lite = TRUE;
++}
++
++gboolean
++e_msg_composer_get_lite (void)
++{
++ return composer_lite;
++}
++
++EMsgComposer *
++e_msg_composer_lite_new (void)
++{
++ EMsgComposer *composer;
++
++ /* Init lite-composer for ever for the session */
++ composer_lite = TRUE;
++
++ composer = e_msg_composer_new_with_type (E_MSG_COMPOSER_MAIL);
++
++ return composer;
++}
++
+ static void
+ e_msg_composer_set_pending_body (EMsgComposer *composer,
+ gchar *text,
+diff --git a/composer/e-msg-composer.h b/composer/e-msg-composer.h
+index f6b2ca7..0c0ecea 100644
+--- a/composer/e-msg-composer.h
++++ b/composer/e-msg-composer.h
+@@ -59,6 +59,7 @@ typedef struct _EMsgComposerPrivate EMsgComposerPrivate;
+ struct _EMsgComposer {
+ GtkhtmlEditor parent;
+ EMsgComposerPrivate *priv;
++ gboolean lite;
+ };
+
+ struct _EMsgComposerClass {
+@@ -73,11 +74,14 @@ struct _EAttachmentBar;
+
+ GType e_msg_composer_get_type (void);
+ EMsgComposer * e_msg_composer_new (void);
++EMsgComposer * e_msg_composer_lite_new (void);
+ EMsgComposer * e_msg_composer_new_with_type (gint type);
+ EMsgComposer * e_msg_composer_new_with_message (CamelMimeMessage *msg);
+ EMsgComposer * e_msg_composer_new_from_url (const gchar *url);
+ EMsgComposer * e_msg_composer_new_redirect (CamelMimeMessage *message,
+ const gchar *resent_from);
++void e_msg_composer_set_lite (void);
++gboolean e_msg_composer_get_lite (void);
+
+ void e_msg_composer_send (EMsgComposer *composer);
+ void e_msg_composer_save_draft (EMsgComposer *composer);
diff --git a/e-util/e-config.c b/e-util/e-config.c
index 4530d7a..4c7116b 100644
--- a/e-util/e-config.c
@@ -1183,10 +1489,83 @@ index 9a5b09a..42421c2 100644
gboolean em_account_editor_save (EMAccountEditor *gui);
void em_account_editor_destroy (EMAccountEditor *gui);
diff --git a/mail/em-composer-utils.c b/mail/em-composer-utils.c
-index 8822566..12b4c48 100644
+index 8822566..4985fc3 100644
--- a/mail/em-composer-utils.c
+++ b/mail/em-composer-utils.c
-@@ -1711,7 +1711,7 @@ generate_account_hash (void)
+@@ -651,13 +651,16 @@ em_composer_utils_setup_callbacks (EMsgComposer *composer,
+ /* Composing messages... */
+
+ static EMsgComposer *
+-create_new_composer (const char *subject, const char *fromuri, gboolean use_default_callbacks)
++create_new_composer (const char *subject, const char *fromuri, gboolean use_default_callbacks, gboolean lite)
+ {
+ EMsgComposer *composer;
+ EComposerHeaderTable *table;
+ EAccount *account = NULL;
+
+- composer = e_msg_composer_new ();
++ if (lite)
++ composer = e_msg_composer_lite_new ();
++ else
++ composer = e_msg_composer_new ();
+ if (composer == NULL)
+ return NULL;
+
+@@ -685,7 +688,7 @@ em_utils_compose_new_message (const char *fromuri)
+ {
+ GtkWidget *composer;
+
+- composer = (GtkWidget *) create_new_composer ("", fromuri, TRUE);
++ composer = (GtkWidget *) create_new_composer ("", fromuri, TRUE, FALSE);
+ if (composer == NULL)
+ return;
+
+@@ -695,6 +698,26 @@ em_utils_compose_new_message (const char *fromuri)
+ }
+
+ /**
++ * em_utils_compose_lite_new_message:
++ *
++ * Opens a new composer window as a child window of @parent's toplevel
++ * window.
++ **/
++struct _EMsgComposer *
++em_utils_compose_lite_new_message (const char *fromuri)
++{
++ GtkWidget *composer;
++
++ composer = (GtkWidget *) create_new_composer ("", fromuri, TRUE, TRUE);
++ if (composer == NULL)
++ return;
++
++ composer_set_no_change (E_MSG_COMPOSER (composer), TRUE);
++
++ return composer;
++}
++
++/**
+ * em_utils_compose_new_message_with_mailto:
+ * @url: mailto url
+ *
+@@ -1071,7 +1094,7 @@ forward_attached (CamelFolder *folder, GPtrArray *uids, GPtrArray *messages, Cam
+ {
+ EMsgComposer *composer;
+
+- composer = create_new_composer (subject, fromuri, TRUE);
++ composer = create_new_composer (subject, fromuri, TRUE, FALSE);
+ if (composer == NULL)
+ return;
+
+@@ -1150,7 +1173,7 @@ forward_non_attached (CamelFolder *folder, GPtrArray *uids, GPtrArray *messages,
+ text = em_utils_message_to_html (message, _("-------- Forwarded Message --------"), flags, &len, NULL, NULL);
+
+ if (text) {
+- composer = create_new_composer (subject, fromuri, !uids || !uids->pdata [i]);
++ composer = create_new_composer (subject, fromuri, !uids || !uids->pdata [i], FALSE);
+
+ if (composer) {
+ if (CAMEL_IS_MULTIPART(camel_medium_get_content_object((CamelMedium *)message)))
+@@ -1711,7 +1734,7 @@ generate_account_hash (void)
return account_hash;
}
@@ -1195,7 +1574,7 @@ index 8822566..12b4c48 100644
em_utils_camel_address_to_destination (CamelInternetAddress *iaddr)
{
EDestination *dest, **destv;
-@@ -1913,6 +1913,12 @@ get_reply_sender (CamelMimeMessage *message, CamelInternetAddress *to, CamelNNTP
+@@ -1913,6 +1936,12 @@ get_reply_sender (CamelMimeMessage *message, CamelInternetAddress *to, CamelNNTP
}
}
@@ -1208,7 +1587,7 @@ index 8822566..12b4c48 100644
static gboolean
get_reply_list (CamelMimeMessage *message, CamelInternetAddress *to)
{
-@@ -2026,6 +2032,13 @@ get_reply_all (CamelMimeMessage *message, CamelInternetAddress *to, CamelInterne
+@@ -2026,6 +2055,13 @@ get_reply_all (CamelMimeMessage *message, CamelInternetAddress *to, CamelInterne
g_hash_table_destroy (rcpt_hash);
}
@@ -1222,7 +1601,7 @@ index 8822566..12b4c48 100644
enum {
ATTRIB_UNKNOWN,
ATTRIB_CUSTOM,
-@@ -2283,6 +2296,21 @@ struct _reply_data {
+@@ -2283,6 +2319,21 @@ struct _reply_data {
int mode;
};
@@ -1244,8 +1623,29 @@ index 8822566..12b4c48 100644
static void
reply_to_message(CamelFolder *folder, const char *uid, CamelMimeMessage *message, void *user_data)
{
+@@ -2313,7 +2364,7 @@ reply_to_message(CamelFolder *folder, const char *uid, CamelMimeMessage *message
+ * may be supplied in order to update the message flags once it has
+ * been replied to.
+ **/
+-void
++struct _EMsgComposer *
+ em_utils_reply_to_message(CamelFolder *folder, const char *uid, CamelMimeMessage *message, int mode, EMFormat *source)
+ {
+ CamelInternetAddress *to, *cc;
+@@ -2391,7 +2442,10 @@ em_utils_reply_to_message(CamelFolder *folder, const char *uid, CamelMimeMessage
+
+ composer_set_no_change (composer, TRUE);
+
+- gtk_widget_show (GTK_WIDGET (composer));
++ if (!e_msg_composer_get_lite())
++ gtk_widget_show (GTK_WIDGET (composer));
++
++ return composer;
+ }
+
+ /* Posting replies... */
diff --git a/mail/em-composer-utils.h b/mail/em-composer-utils.h
-index d17a98c..8b5d279 100644
+index d17a98c..857d74c 100644
--- a/mail/em-composer-utils.h
+++ b/mail/em-composer-utils.h
@@ -34,9 +34,12 @@ extern "C" {
@@ -1261,16 +1661,25 @@ index d17a98c..8b5d279 100644
void em_composer_utils_setup_callbacks (struct _EMsgComposer *composer, struct _CamelFolder *folder, const char *uid,
guint32 flags, guint32 set, struct _CamelFolder *drafts, const char *drafts_uid);
-@@ -77,9 +80,15 @@ enum {
+@@ -47,6 +50,7 @@ void em_utils_composer_send_cb(struct _EMsgComposer *composer, gpointer user_dat
+ void em_utils_composer_save_draft_cb(struct _EMsgComposer *composer, gpointer user_data);
+
+ void em_utils_compose_new_message (const char *fromuri);
++struct _EMsgComposer * em_utils_compose_lite_new_message (const char *fromuri);
+
+ /* FIXME: mailto? url? should make up its mind what its called. imho use 'uri' */
+ void em_utils_compose_new_message_with_mailto (const char *url, const char *fromuri);
+@@ -77,9 +81,15 @@ enum {
REPLY_MODE_LIST
};
+-void em_utils_reply_to_message (struct _CamelFolder *, const char *uid, struct _CamelMimeMessage *message, int mode, struct _EMFormat *source);
+char *em_utils_construct_composer_text (struct _CamelMimeMessage *message, struct _EMFormat *source);
+void em_utils_get_reply_sender (struct _CamelMimeMessage *message, struct _CamelInternetAddress *to, struct _CamelNNTPAddress *postto);
+void em_utils_get_reply_all (struct _CamelMimeMessage *message, struct _CamelInternetAddress *to, struct _CamelInternetAddress *cc, struct _CamelNNTPAddress *postto);
+
+
- void em_utils_reply_to_message (struct _CamelFolder *, const char *uid, struct _CamelMimeMessage *message, int mode, struct _EMFormat *source);
++struct _EMsgComposer * em_utils_reply_to_message (struct _CamelFolder *, const char *uid, struct _CamelMimeMessage *message, int mode, struct _EMFormat *source);
void em_utils_post_reply_to_message_by_uid (struct _CamelFolder *folder, const char *uid);
+struct _EDestination ** em_utils_camel_address_to_destination (struct _CamelInternetAddress *iaddr);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]