* Evolution-Composer.idl, evolution-composer.c
(impl_Composer_show): "Forward as iCalendar" uses set_body, so we
can't make the composer un-showable after doing that. So get rid
of the "cannot show" exception.
* e-msg-composer.c (e_msg_composer_set_body): Prepare the composer
to be shown in its weird state: Put an explanatory message in the
body, then call disable_editor.
(disable_editor): Common editor-disabling code - makes the editor
and attachment bar insensitive and disables any menu items that
could be used to modify them.
(e_msg_composer_new_redirect): Use disable_editor here now.
svn path=/trunk/; revision=16191
2002-03-07 Radek Doulik <rodo@ximian.com>
* e-msg-composer.c (destroy): ops, unregister and not register new
one sig_event_client
svn path=/trunk/; revision=15964
Mailer side of 14705.
* Evolution-Composer.idl (setBody): Change setBodyText to setBody
and take a MIME type as well.
(show): Add an exception.
* evolution-composer.c (impl_Composer_set_body, etc): Update for
IDL change. While I'm here, fix this to DTRT with both plaintext
and HTML bodies. (It claimed to take plain text before, but then
passed it to the composer as HTML.)
(impl_Composer_show): Raise an exception if setBody has been
called, since the composer window will not display the real data
in that case.
* e-msg-composer.c (e_msg_composer_set_body): interface for
impl_Composer_set_body.
(build_message): If e_msg_composer_set_body has been called, use
the body and MIME type supplied to it rather than the contents of
the HTML editor.
svn path=/trunk/; revision=15833
2002-02-14 Radek Doulik <rodo@ximian.com>
* e-msg-composer.c (delete_old_signature): don't insert paragraph
here, also delete paragraph where signature was
(e_msg_composer_show_sig_file): test if we are in empty document
and if so, insert new paragraph for signature
svn path=/trunk/; revision=15729
2002-02-01 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (update_auto_recipients): Update the
auto-cc/bcc recipients in the composer header fields to match the
ones chosen in the account configuration.
svn path=/trunk/; revision=15548
2002-01-31 Radek Doulik <rodo@ximian.com>
* e-msg-composer.c (e_msg_composer_ignore): new method, tells
composer to ignore all word in str string
(next_word): helper function to get next word from s, saves rest
of s to sr
svn path=/trunk/; revision=15540
2002-01-29 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (build_message): If we are in redirect mode,
use the original message and set the resent-* headers using
e_msg_composer_hdrs_to_redirect() and then return.
(destroy): Unref the redirected message if it exists.
* e-msg-composer-hdrs.c (e_msg_composer_hdrs_to_redirect): New
function for a composer in redirect mode.
svn path=/trunk/; revision=15507
2002-01-10 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (get_file_content): Rewrote to use CamelStreams
and also convert the file contents to UTF-8 (assums the file
charset is the same charset that the composer is set to).
(menu_file_insert_file_cb): Pass the composer into
get_file_content().
(e_msg_composer_get_sig_file_content): Pass NULL as the composer
argument.
svn path=/trunk/; revision=15286
2002-01-09 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (class_init): Fixed the setup of the
"save-draft" signal so that it would actually work.
svn path=/trunk/; revision=15279
2002-01-07 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (e_msg_composer_get_message_draft): Set the
X-Evolution-Format header to text/plain if that is the editing
mode we are really in. This fixes bug #11499.
svn path=/trunk/; revision=15255
2002-01-04 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (e_msg_composer_new_from_url): A few minor
fixes to make it more compliant with rfc2368. Should now be fully
rfc compliant as far as I can tell.
svn path=/trunk/; revision=15249
2001-12-17 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (read_file_content): Don't block forever if we
are reading a fifo with no data.
svn path=/trunk/; revision=15122
2001-12-14 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (class_init): Setup the SAVE_DRAFT signal.
(menu_file_save_draft_cb): Emit the SAVE_DRAFT signal.
(exit_dialog_cb): Same here.
(save_draft): Removed. This code is now a signal that
mail-callbacks will connect to.
svn path=/trunk/; revision=15079
001-12-11 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-attachment.c (e_msg_composer_attachment_edit):
Attach to the parent widget's destroy signal - when that gets
destroyed, we need to cancel the editor dialog too. Also connect
to our parent window's "hide" signal so that when the composer
gets hidden (ie, it's being sent), we also close the dialogs.
* e-msg-composer.c (init): Default composer->enable_autosave to
TRUE.
svn path=/trunk/; revision=15016
2001-12-11 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer-select-file.c
(file_selection_info_destroy_notify): If the widget is non-NULL,
then gtk_widget_destroy that bad boy...
svn path=/trunk/; revision=14984
2001-12-10 Jon Trowbridge <trow@ximian.com>
* e-msg-composer.c (get_file_content): Only execute an executable
sig file if a magic environment variable is set.
svn path=/trunk/; revision=14962
2001-12-06 Jon Trowbridge <trow@ximian.com>
* e-msg-composer.c (executed_file_output): Added. Executes the
given file and returns its output as a string.
(get_file_content): Stats the file to see if it is executable.
If it is, execute it and return the string. If not, just read
the file and return the contents.
svn path=/trunk/; revision=14917
2001-11-30 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (setup_ui): Change the FileSend tooltip the be
the same as the FileSendLater tooltip if we are in offline mode.
svn path=/trunk/; revision=14871
2001-11-19 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (setup_ui): If we come back online, switch the
Send accelerator back to the Send button from the Send Later
button.
svn path=/trunk/; revision=14752
2001-11-14 Larry Ewing <lewing@ximian.com>
* e-msg-composer.c (create_composer): popup failure dialog if we
cannot get a valid editor_engine.
(prepare_engine): make the checks robust and make sure that we
unset the engine if any part fails.
svn path=/trunk/; revision=14715
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.
svn path=/trunk/; revision=14574
* e-msg-composer.c (build_message): Remove Content-Disposition in
the no_body case. (More kludging around Outlook iCalendar
brokenness.)
svn path=/trunk/; revision=14433
* evolution-composer.c (init): Set the (new) "no_body" flag on the
composer.
(impl_Composer_set_body_text): And unset it here.
(unset_no_body): And here (called if/when the composer is
realized).
* e-msg-composer.c (build_message): If the composer has the
"no_body" flag set, and a single attachment, promote that
attachment to be the message body.
svn path=/trunk/; revision=14393
2001-10-29 Larry Ewing <lewing@ximian.com>
* e-msg-composer.h: add GList to hold the current images.
* listener.c (resolve_image_url): keep track of the images that
the editor is currently uses in current_images as well as storing
the images in the hash.
* e-msg-composer.c (clear_current_images): clear the list of
images actually in the message.
(add_inlined_images): use the current image list rather than the
hash tables.
(build_message): clear the current image list when appropriate.
(init): initialize current_images.
svn path=/trunk/; revision=14379
2001-10-24 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (add_attachments_from_multipart): New function
that replaces handle_multpart() and handle_multipart_alternative()
for add_message_attachments().
(e_msg_composer_add_message_attachments): Call
add_attachments_from_multipart().
(handle_multipart_alternative): Now only used by
new_with_message() and is really only designed to work well with
messages generated by Evolution (ie for editing Drafts and such).
(handle_multipart): Same.
(e_msg_composer_new_with_message): No longer calls
add_message_attachments() because we can't ever have this fail and
the logic in add_message_attachments() is impossible
logic. Instead do like what we used to do before the addition of
add_message_attachments() came along.
svn path=/trunk/; revision=14084
2001-10-24 Larry Ewing <lewing@ximian.com>
* e-msg-composer.c
(e_msg_composer_add_inline_image_from_mime_part): rework this so
that we don't end up freeing the cid then reading from it.
svn path=/trunk/; revision=14077
attachments. Also, I think this should make replies to HTML
messages containing inline images referenced via Content-Location
work, but that's not tested.
* e-msg-composer.c (various): Keep two hash tables of inline image
data: one mapping from cid: URLs to CamelMimeParts for all
attachments, the other mapping from file: and Content-Location
urls to CamelMimeParts (for those inline images that came from a
file or have a Content-Location).
(add_inlined_images): Simplify. Most of this code is in
e_msg_composer_add_inline_image_from_file() now.
(e_msg_composer_add_message_attachments, handle_multipart): Change
"attach_all" arg to "just_inlines". If it is set, call
e_msg_composer_add_inline_image_from_mime_part on any attachment
with a Content-Id or Content-Location.
(e_msg_composer_add_inline_image_from_file): Create a mime part
from a file and add it to the inline images hash.
(e_msg_composer_add_inline_image_from_mime_part): Add a mime part
directly to the inline images hash.
* listener.c (resolve_image_url): If asked to resolve a file: URL
that isn't in the inline images hash, call
e_msg_composer_add_inline_image_from_file to get a cid for it.
(impl_event): Look up the URL in the inline_images and
inline_images_by_url hashes.
* e-msg-composer-attachment-bar.c
(e_msg_composer_attachment_bar_find_message): Gone. No longer
used.
svn path=/trunk/; revision=13852
2001-10-19 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (handle_multipart): Now takes a 'attach_all'
argument. If !attach_all, then only attach the attachment if the
part has a content-id, otherwise we can safely assume that nothing
references it thus we don't need to attach it.
(e_msg_composer_add_message_attachments): Now takes a 'attach_all'
argument that overrides the "only attach attachments if they have
a content-id header" behavior.
(e_msg_composer_new_with_message): Pass TRUE as the attach_all
argument to add_message_attachments.
svn path=/trunk/; revision=13800
2001-10-18 Jeffrey Stedfast <fejj@ximian.com>
* e-msg-composer.c (best_encoding): Don't use a
g_return_val_if_fail after iconv_open, this is a valid error
condition and so should use check it for real.
* e-msg-composer-attachment-bar.c (attach_to_multipart): Correctly
set the charset parameter and use camel's bestenc filter to
determine which content transfer encoding to use.
svn path=/trunk/; revision=13784