aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-event.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/em-event.c')
-rw-r--r--mail/em-event.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/mail/em-event.c b/mail/em-event.c
index b1bf7a7d05..4e79c31d08 100644
--- a/mail/em-event.c
+++ b/mail/em-event.c
@@ -76,6 +76,8 @@ eme_target_free(EEvent *ep, EEventTarget *t)
if (s->message)
camel_object_unref(s->message);
g_free(s->uid);
+ if (s->composer)
+ g_object_unref (s->composer);
break; }
case EM_EVENT_TARGET_COMPOSER : {
EMEventTargetComposer *s = (EMEventTargetComposer *)t;
@@ -169,7 +171,7 @@ em_event_target_new_composer (EMEvent *eme, const EMsgComposer *composer, guint3
}
EMEventTargetMessage *
-em_event_target_new_message(EMEvent *eme, CamelFolder *folder, CamelMimeMessage *message, const gchar *uid, guint32 flags)
+em_event_target_new_message(EMEvent *eme, CamelFolder *folder, CamelMimeMessage *message, const gchar *uid, guint32 flags, EMsgComposer *composer)
{
EMEventTargetMessage *t = e_event_target_new(&eme->popup, EM_EVENT_TARGET_MESSAGE, sizeof(*t));
@@ -181,6 +183,8 @@ em_event_target_new_message(EMEvent *eme, CamelFolder *folder, CamelMimeMessage
if (message)
camel_object_ref(message);
t->target.mask = ~flags;
+ if (composer)
+ t->composer = g_object_ref(G_OBJECT(composer));
return t;
}
@@ -233,6 +237,7 @@ static const EEventHookTargetMask emeh_composer_masks[] = {
static const EEventHookTargetMask emeh_message_masks[] = {
{ "replyall", EM_EVENT_MESSAGE_REPLY_ALL },
+ { "reply", EM_EVENT_MESSAGE_REPLY },
{ NULL }
};