aboutsummaryrefslogtreecommitdiffstats
path: root/composer/e-msg-composer.h
diff options
context:
space:
mode:
authorYan Li <yanli@infradead.org>2009-11-06 16:43:58 +0800
committerYan Li <yanli@infradead.org>2009-11-06 16:43:58 +0800
commitd209b896747b519c42c6326fd1d6550ae7f176e5 (patch)
tree2744e14263b21b17262aabc901c275912e5aa32c /composer/e-msg-composer.h
parent23c781c2475b144a365eaf50dffb88986899b4c8 (diff)
downloadgsoc2013-evolution-d209b896747b519c42c6326fd1d6550ae7f176e5.tar.gz
gsoc2013-evolution-d209b896747b519c42c6326fd1d6550ae7f176e5.tar.zst
gsoc2013-evolution-d209b896747b519c42c6326fd1d6550ae7f176e5.zip
Bug #599792 - Anjal composer's Send button doesn't work after pressed Save Drafts button
This is due to an old hack that hiding a composer means we're closing it so save_draft_done() destroys the composer after saved draft. But in Anjal, the composer widget is always hidden (since the editor is reparented to the tab), and will be wrongly destroyed by save_draft_done() when you clicked "Save Draft" button. This patch improved the old hack, by adding a new API e_msg_composer_request_close() that can be used to request closing a composer (so the old hack is no longer needed). Internally, composer->priv->application_exiting is used to store this exiting status. So by this we no longer use a composer's visibility to check whether we're to close it. When you no longer need a composer after saved draft, call e_msg_composer_request_close() before sending the save-draft signal. The e_msg_composer_is_exiting() (removed by 983bea9) has to be bring back, which is needed by other programs that use the composer (Anjal here). (forward ported from 08150f6 of gnome-2-28)
Diffstat (limited to 'composer/e-msg-composer.h')
-rw-r--r--composer/e-msg-composer.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/composer/e-msg-composer.h b/composer/e-msg-composer.h
index e0d118b4f4..116eb38425 100644
--- a/composer/e-msg-composer.h
+++ b/composer/e-msg-composer.h
@@ -1,3 +1,4 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
/*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -135,6 +136,7 @@ void e_msg_composer_add_message_attachments
CamelMimeMessage *message,
gboolean just_inlines);
+void e_msg_composer_request_close (EMsgComposer *composer);
EMsgComposer * e_msg_composer_load_from_file (const gchar *filename);
void e_msg_composer_check_autosave (GtkWindow *parent);
@@ -148,6 +150,8 @@ EAttachmentView *
GByteArray * e_msg_composer_get_raw_message_text
(EMsgComposer *composer);
+gboolean e_msg_composer_is_exiting (EMsgComposer *composer);
+
GList * e_load_spell_languages (void);
void e_save_spell_languages (GList *spell_languages);