diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2008-04-09 10:00:45 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@src.gnome.org> | 2008-04-09 10:00:45 +0800 |
commit | 534e5a1764bdbeb542cf3531c2575df451d8e572 (patch) | |
tree | cf340bb3975698b2cf1dfd61ac9bf6b10805bbc3 /composer/e-composer-autosave.c | |
parent | fea1867db330edef4260cd057e1f73b61aacc6fa (diff) | |
download | gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.tar gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.tar.gz gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.tar.bz2 gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.tar.lz gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.tar.xz gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.tar.zst gsoc2013-evolution-534e5a1764bdbeb542cf3531c2575df451d8e572.zip |
** Fixes bug #523413
2008-04-08 Matthew Barnes <mbarnes@redhat.com>
** Fixes bug #523413
* composer/e-msg-composer.c (msg_composer_dispose):
Use the 'application_exiting' private flag to determine whether
to tell e_composer_autosave_unregister() to delete the autosave
file.
* composer/e-msg-composer.c (msg_composer_class_init),
(e_msg_composer_save_draft):
Remove the 'quit' parameter from the 'save-draft' signal.
* composer/e-msg-composer.c (e_msg_composer_request_close_all):
Take an autosave snapshot before activating the CLOSE action,
and set the private 'application_exiting' flag. This should
avoid prompting the user before shutting down.
* composer/e-composer-actions.c (action_close_cb):
When electing to save a message before closing, hide the window
immediately. The callback function can then check the window's
visibility after the save is complete to know whether to destroy
the window.
* composer/e-composer-autosave.c (e_composer_autosave_unregister):
Add a 'delete_file' boolean parameter to determine whether to
delete the autosave file.
* composer/e-composer-private.h:
Add an 'application_exiting' flag.
* mail/em-composer-utils.c (save_draft_done):
Check the composer window's visibility to determine whether to
destroy the window. See the corresponding composer/ChangeLog
entry to get the full story.
* mail/em-composer-utils.c (em_utils_composer_save_draft_cb):
Remove the 'quit' parameter.
svn path=/trunk/; revision=35346
Diffstat (limited to 'composer/e-composer-autosave.c')
-rw-r--r-- | composer/e-composer-autosave.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/composer/e-composer-autosave.c b/composer/e-composer-autosave.c index eda3a033e2..23451685f3 100644 --- a/composer/e-composer-autosave.c +++ b/composer/e-composer-autosave.c @@ -230,9 +230,12 @@ e_composer_autosave_register (EMsgComposer *composer) } void -e_composer_autosave_unregister (EMsgComposer *composer) +e_composer_autosave_unregister (EMsgComposer *composer, + gboolean delete_file) { AutosaveState *state; + GtkWindow *parent; + gboolean delete_autosave_file = FALSE; g_return_if_fail (E_IS_MSG_COMPOSER (composer)); @@ -240,11 +243,10 @@ e_composer_autosave_unregister (EMsgComposer *composer) if (state == NULL || state->filename == NULL) return; - if (e_composer_autosave_snapshot (composer)) { - close (state->fd); + close (state->fd); + + if (delete_file) g_unlink (state->filename); - } else - close (state->fd); g_object_set_data (G_OBJECT (composer), "autosave", NULL); } |