diff options
-rw-r--r-- | composer/ChangeLog | 7 | ||||
-rw-r--r-- | composer/e-msg-composer.c | 13 | ||||
-rw-r--r-- | composer/e-msg-composer.h | 3 |
3 files changed, 22 insertions, 1 deletions
diff --git a/composer/ChangeLog b/composer/ChangeLog index 05e91395b7..74ccb2f27d 100644 --- a/composer/ChangeLog +++ b/composer/ChangeLog @@ -1,3 +1,10 @@ +2001-11-02 <NotZed@Ximian.com> + + * e-msg-composer.c (e_msg_composer_set_enable_autosave): New + function, enable/disable autosave for the composer temporarily. + (autosave_run_foreach_cb): Only save if we have enable autosave + turned on. In other cases we want to save it regardless. + 2001-10-30 Dan Winship <danw@ximian.com> * e-msg-composer.c (build_message): Add back the "remove diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c index 4825e3b4f0..ec3fea9578 100644 --- a/composer/e-msg-composer.c +++ b/composer/e-msg-composer.c @@ -1207,7 +1207,8 @@ autosave_run_foreach_cb (gpointer key, gpointer value, gpointer data) { EMsgComposer *composer = E_MSG_COMPOSER (value); - autosave_save_draft (composer); + if (composer->enable_autosave) + autosave_save_draft (composer); } static gint @@ -3841,4 +3842,14 @@ e_msg_composer_is_dirty (EMsgComposer *composer) return dirty; } +void +e_msg_composer_set_enable_autosave (EMsgComposer *composer, gboolean enabled) +{ + g_return_if_fail (composer != NULL); + g_return_if_fail (E_IS_MSG_COMPOSER (composer)); + + composer->enable_autosave = enabled; +} + + diff --git a/composer/e-msg-composer.h b/composer/e-msg-composer.h index dab1db16bf..2f8badf908 100644 --- a/composer/e-msg-composer.h +++ b/composer/e-msg-composer.h @@ -95,6 +95,8 @@ struct _EMsgComposer { gboolean has_changed : 1; gboolean in_signature_insert : 1; + + gboolean enable_autosave : 1; }; struct _EMsgComposerClass { @@ -159,6 +161,7 @@ gchar * e_msg_composer_guess_mime_type (const gchar *file_name); void e_msg_composer_set_changed (EMsgComposer *composer); void e_msg_composer_unset_changed (EMsgComposer *composer); gboolean e_msg_composer_is_dirty (EMsgComposer *composer); +void e_msg_composer_set_enable_autosave (EMsgComposer *composer, gboolean enabled); /* PGP */ void e_msg_composer_set_pgp_sign (EMsgComposer *composer, |