aboutsummaryrefslogblamecommitdiffstats
path: root/composer/ChangeLog
blob: 2052a76666d41790aacb0c88d9c6c9c6e46059ce (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12











                                                                          








                                                                          




                                                                      




                                                                          














                                                                          



                                                              




                                                                      




                                                                          




                                                                      





















                                                                         






                                                                         






                                                                   




                                                                         







                                                                         





                                                                         






                                                                        









                                                                       



                                                 









                                                                          











                                                                         





                                                                      





                                                                         





                                                                       





                                                                          




                                                                         







                                                                     

                                               










                                                                        


                                                                          

                                                                     


                                               



                                                                        
















                                                                          




                                                                         







                                                                       
                                               
 

                                                                         
 




                                                                      




                                                                         






                                                                        




                                                                  






                                                                       

                                          


                                                                








                                                                        





                                                     









                                                                       





                                                                         




                                                                          











                                                                          



                                                                     














                                                                         
















                                                                          





                                                                        




                                                                    
                                          































                                                                          











                                                                          









                                                                          









                                                                         














                                                                          







                                                                                













                                                                            












                                                                        

                                               





                                                                          


                                                                          

                                            


                                                                     




















                                                                          

                                            





                                                                         






                                                                   








                                                                         




                                                                        





                                                 





                                                                         





                                                                         




                                                                     





                                                                            










                                                                          







                                                                   






                                                                          




                                                                        




                                                                   

                                               


                                                                          


                                                                    
                                                    


                                               




                                                                          




                                                                    




























                                                                           





                                                                        



                                                                    


                                                                          
 





                                                                   














                                                                       








                                                                        




                                                                      




                                                                 




                                                                     




                                                          









                                                                       




                                                                       








                                                                          




                                                                       





                                                                         





                                                                       




                                                                    



                                                      




                                                                              




                                                                       




                                                                 





                                                                         




                                                                              





                                                                          




                                                                       



                                                       




                                                                       




                                                                       



                                                        





                                                                          





                                                                      




                                                                            






                                                                       




                                                                            





                                                                       


                                                                      

                                                                         

                                                                         
 





                                                                      

                                            




                                                                          
                                                     


                                            








                                                                          








                                                                        






                                                                        




                                                                          

                                            


                                                                          





















                                                                           

                                            


                                                                           





                                                                            



                                                              

                                               











                                                                          

                                                                    
                                  
 





                                                                         




                                                                     

                                           



                                                                        
                                                                          







                                                                          
 







                                                                         





                                                                         






                                                                        







                                                                          








                                                                              






                                                                       






                                                                       





















                                                                          




                                                                   





                                                                      








                                                                         




                                                                        






                                                                       







                                                                          



                                                                             



                                                                        




                                                               



                                                                     














                                                                         





                                                                         



                                                         






                                                                          


                                                                  
                                                    

                                                                       
 



                                                                       






                                                                          




                                                                        











                                                                           







                                                                            




                                                                          






























                                                                            



                                                       

                                           


                                                                        
















                                                                         







                                                                         



                                                                



                                                                        
                                                                          
 




                                                                   

                                               

                                                                       
 




                                                   














                                                                            





                                                                         



                                                                  
                                                                       
 




                                                                          



                                                           





                                                                          










                                                                          



























                                                                          






























                                                                          





                                                                          




                                                                    



                                                              





                                                                         







                                                                          









                                                                          





                                                                      










                                                                          





                                                                         




                                                                     





                                                                         




                                                                         


















                                                                          










                                                                        






                                                                         







                                                                          






                                                                       







                                                                       












                                                                          





                                                                          














                                                                          










                                                                         






                                                                  




                                                                      



                                                         





                                                                      







                                                                        





                                                            




                                                                       

















                                                                          









                                                                         




                                                                     





                                                                      




                                                                          




                                                                       

                                                                        
 

                                                  




                                                                        



                                                                         




                                                                   




                                                                        








                                                                        

                                             



                                                                        


                                                             










                                                                         









                                                                         




                                                                      





                                                                       



                                                              







                                                                             





                                                                        














                                                                

                                              

                                                             



                                                                    


                                                                      

                                              

                                                                 



                                                             




                                                                   




                                                           






                                                                         





                                                                    




                                                                          
















                                                                         















                                                                          







                                                                          





                                                                   

                                              


                                                                          























                                                                          




                                                                      



                                                              





                                                                               

                                                  





                                                                          



                                                                          

















                                                                          




                                                                 






                                                                         




                                                                          





                                                                       






                                                                    

                                             


                                                                     









                                                                          




                                                     




                                                                          





                                                                      



                                                               

                                             


                                                                 







                                                                     





                                                                          












                                                                           



                                                                  





                                                                          




                                                                       




                                                                         







                                                                            





                                                                   






                                                                        





                                                                          



                                                              











                                                                              
















                                                                           





                                                                        






                                                                         




                                                                  










                                                                          







                                                                      









                                                                          



                                                      




                                                                       



                                                               





                                                                       




                                                                      



                                                              




                                                                          



                                                                       
 

                                                  





                                                                        









                                                                            







                                                             




                                                              



                                                            




                                                                 



                                                             



                                                       




                                                                           




                                                                          




                                                                        









                                                                        












                                                                        



                                                                     

                                                  


                                                                




                                                                        





                                                                        








                                                                          







                                                          




                                                                   
                                            





                                                                   





                                                                      





                                                                         





                                                                      

                                                    























                                                                        














                                                                         






                                                                        




                                                                   




                                                                        



                                                              




                                                                        



                                                             

                                                    














                                                                       










                                                                    



                                                                       
                                                       
 




                                                                  








                                                    






































                                                                          

                                             





                                                                         


                                                                          




                                                                          








                                                                   






                                                                     






























                                                                          



                                                                      







                                                                         



                                              



                                                                         
                                                           
 






                                                                         




                                                                      




                                                                         






                                                                        




                                                                    




                                                                          




                                                                       







                                                                      




                                                                        



                                            




                                                                        




                                                                         

                                             



                                                                     



                                                       
                                                                      



                                                                         
 








                                                                          





                                                                          






                                                                         






                                                                       



                                                         
                                                    






                                                         






                                                                    




                                                                     




                                                                          




                                                                          







                                                                          

                                                    






















                                                                         











                                                                          




                                                            



















                                                                       
2002-04-09  Not Zed  <NotZed@Ximian.com>

    * e-msg-composer-hdrs.c (set_recipients_from_destv): Use decode
    rather than unformat - the e_destination was changed (long time
    ago) to rfc2047 encode the addresses, so we should decode
    likewise.  Should fix #16158.

    * e-msg-composer.c (next_word): g_utf8_next_char never returns
    NULL, it just skips to the next character.  So like normal string
    code, we just check for a nul explicitly.  Fixes a bug found while
    checking #16158.

2002-04-05  Jeffrey Stedfast  <fejj@ximian.com>

    Fixes bug #3980.

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_set_cc): If a Cc list
    is set to something non-empty, make sure to show the Cc widgets.
    (e_msg_composer_hdrs_set_bcc): Same but for Bcc.
    (e_msg_composer_hdrs_set_reply_to): And here.

2002-03-28  Christopher James Lahey  <clahey@ximian.com>

    * e-msg-composer-select-file.c: Switch to using EFileSelection
    here instead of GtkFileSelection.

2002-03-27  Larry Ewing  <lewing@ximian.com>

    * Makefile.am: fix for the changes to GTKHTML_DATADIR that include
    the release number.

2002-03-18  Dan Winship  <danw@ximian.com>

    * 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.
    
2002-03-15  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c: use gtkhtml editor API version 1.1

2002-03-11  Dan Winship  <danw@ximian.com>

    * listener.c (impl_event): Remove the extremely verbose printf
    here.

2002-03-07  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (destroy): ops, unregister and not register new
    one sig_event_client

2002-03-04  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (build_message): Fix a dumb bug in previous
    commit that broke iMIP containing 8-bit data.

2002-02-25  Dan Winship  <danw@ximian.com>

    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.

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

2002-02-12  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (e_msg_composer_flush_pending_body): Use
    set_editor_text()
    (e_msg_composer_new_from_url): Same.
    (e_msg_composer_set_body_text): Re-Show the signature.

2002-02-12  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (e_msg_composer_is_dirty): reflect gtkhtml API
    change

2002-02-11  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (e_msg_composer_drop_editor_undo): new method,
    drops undo in editor and resets dirty flag in editor
    (do_exit): remove TRUE from condition as dirty flag in editor
    should work now
    (e_msg_composer_is_dirty): use new editor API for dirty flag

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.

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

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.

2002-01-27  Ettore Perazzoli  <ettore@ximian.com>

    * Makefile.am: Use GNOME_FULL_CFLAGS.

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.

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.

2002-01-08  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (is_special_header): Greatly simplified. No
    need to have a list of headers to not accept - we can just refuse
    all headers that are not X-* headers (other than X-Evolution
    headers).

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.

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.

2002-01-03  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_edit):
    Only connect to the parent's destroy/hide signals while the
    attachment editor dialog is "alive".

2001-12-21  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-select-file.c (composer_hide_cb): Only cancel the
    selection dialog if it is currently in use, otherwise we'll get an
    extra gtk_main_quit and the mailer will exit :-(

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.

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.

2001-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.

2001-12-11  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-select-file.c (confirm): If multiple-selection is
    enabled but nothing is slected, fall back to using the filename in
    the entry box as the "selected" file.
    (create_file_selection): If the composer gets hidden (ie it's
    being "sent") then cancel the file selection dialog.

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...

2001-12-10  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment-bar.c (add_from_user):
    select_file_attachments now returns a GPtrArray so handle that and
    loop until we've added all the attachment files.

    * e-msg-composer-select-file.c (confirm): Add an evil kludge to
    get a list of filenames from the GtkFileSelection widget based on
    the label in the history option menu item and the base filenames
    of the selected items in the filename clist.
    (create_file_selection): Setup the clist to allow multiple
    selection.
    (file_selection_info_destroy_notify): Destroy the GPtrArray
    containing the list of xselected files.
    (select_file_internal): Return a GPtrArray of files instead of a
    char *.

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.

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.

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.

2001-11-11  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (drag_data_received): Allow drag & drop for
    vcards.

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.

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. 

2001-11-02  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (add_inlined_images): use hash table to
    eliminate duplicates

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
    Content-Disposition when sending itip" hack.

    * Evolution-Composer.idl (setMultipartType): New.

    * evolution-composer.c (impl_Composer_set_multipart_type): Allow
    caller to specify a multipart/alternative rather than
    multipart/mixed.

    * e-msg-composer.c (build_message): Revert yesterday's changes.
    Add new ones for sending multipart/alternative.

2001-10-30  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.h: add dirty prototype.

    * e-msg-composer.c: add dirty implementation.

2001-10-30  Radek Doulik  <rodo@ximian.com>

    * listener.c (insert_paragraph_before): new helper function,
    extracted
    (insert_paragraph_after): ditto
    (impl_event): process command_before and command_after, use new
    functions
    (clear_signature): reset style to be sure
    (reply_indent): ditto

2001-10-30  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (build_message): Remove Content-Disposition in
    the no_body case. (More kludging around Outlook iCalendar
    brokenness.)

2001-10-29  Ettore Perazzoli  <ettore@ximian.com>

    * e-msg-composer.c (setup_ui): Put the charset encoding submenu in
    the EncodingPlaceholder.

2001-10-29  Dan Winship  <danw@ximian.com>

    * 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.

2001-10-30  Radek Doulik  <rodo@ximian.com>

    * listener.c (reply_indent): simplified, requires new gtkhtml

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.
    
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.

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.

2001-10-22  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (create_from_optionmenu): Check that
    account->id->address != NULL.

2001-10-21  Dan Winship  <danw@ximian.com>

    Make inline images used for replies not show up as
    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.

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.

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.

2001-10-15  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (e_msg_composer_add_message_attachments):
    s/apply/flush/.
    (e_msg_composer_flush_pending_body): renamed from apply now takes
    apply as an argument.
    (e_msg_composer_show_sig_file): s/g_assert/g_return_if_fail/
    warnings make for less painful bugs than crashes.
    (set_editor_text): s/g_assert/g_return_if_fail/

2001-10-13  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (autosave_manager_unregister): Don't pop up an
    "unable to retrieve message" if the composer never finished
    initializing.
    (init): Don't call autosave_manager_register here: wait until the
    end of create_composer.
    (create_composer): Remove the distinction between this and
    e_msg_composer_construct since there's no need for the latter. Use
    e_activation_failure_dialog if either the selectnames component or
    the gtkhtml editor fails.

    * e-msg-composer-hdrs.c (setup_corba): Don't g_warn if the oaf
    activation fails. create_composer() will tell the user.

2001-10-11  Jeffrey Stedfast  <fejj@ximian.com>

    * listener.c (impl_event): Deleted declaration of len.

    * e-msg-composer.c (e_msg_composer_add_message_attachments): Take
    a settext argument.
    (e_msg_composer_new_with_message): Updated to pass the settext argument.

2001-10-10  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_set_from_account):
    Check for either a matching account name, or for a matching e-mail
    address embedded in the passed-in string. (Fixes half of bug
    #3255)
    (destroy): Call bonobo_object_release_unref on corba_select_names,
    not CORBA_Object_release.  Otherwise we leak stuff all over the
    place. (Bug #11878)

    * e-msg-composer.c (e_msg_composer_new_with_message): If our message
    doesn't contain an X-Evolution-Account header, pass in the From
    header as the account name.  (Fixes the other half of #3255)

2001-10-10  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.h: add prototype.

    * e-msg-composer.c (e_msg_composer_add_message_attachments): new
    function to copy attachments from the a message to a composer.
    (e_msg_composer_set_pending_body): make simple function to
    abstract this.
    (e_msg_composer_apply_pending_body): apply the pending body to
    the composer.
    (e_msg_composer_new_with_message): use
    e_msg_composer_add_message_attachments to copy attachments.

2001-10-09  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment-bar.c (add_from_file): If the
    attachment fails, report the error to the user.

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new): Now
    takes a CamelException argument.

    * e-msg-composer.c (setup_ui): Pass /menu/Edit as the menu path to
    e_charset_picker thingy.

2001-10-05  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer-attachment-bar.c
    (e_msg_composer_attachment_bar_find_message): fix cut&pasteo.

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    remove unused variable.

    * e-msg-composer-attachment-bar.c
    (e_msg_composer_attachment_bar_find_message): generalize this to
    lookup content locations as well.

    * e-msg-composer-attachment-bar.h: change prototype to match the
    new function.

    * listener.c (impl_event): handle the url_requested event, look up
    parts in the attachment part and feed them down the stream if it
    is found.

    * e-msg-composer.c (handle_multipart_alternative): delay setting
    the body text.
    (handle_multipart): delay setting body text
    (e_msg_composer_new_with_message): set the body text from the
    object data.  Doing this ensures that we will have the attachments
    processed before we try to look them up.

2001-10-04  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer-attachment-bar.c 
    (e_msg_composer_attachment_bar_find_content_id): change to return
    a CamelMimePart.

    * e-msg-composer-attachment-bar.h: update prototype.
    
    * e-msg-composer-attachment-bar.c
    (e_msg_composer_attachment_bar_find_content_id): look up an
    attachment by it's content id.

    * e-msg-composer-attachment-bar.h: add prototype for
    e_msg_composer_attachment_bar_find_content_id.

2001-10-03  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (autosave_save_draft): Make sure to unref the
    message object so we don't leak it or any references to
    attachments (child mime parts).

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    Unref the mime part after passing it along to new_from_mime_part.

2001-10-02  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (save_draft): Pass an empty flags argument to
    mail_get_folder.

2001-10-02  Ettore Perazzoli  <ettore@ximian.com>

    * e-msg-composer.c (setup_ui): Use
    `bonobo_ui_component_new_default()', not
    `bonobo_ui_component_new()'.

2001-09-27  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    Don't set Content-Ids on these parts since they are not contained
    within a multipart/related - this fixes bug #10032.

2001-09-26  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer.c (e_msg_composer_new_from_url): Fixes glitch in
    mailto: url parsing that caused it to fail when recipient names
    contained commas. (Bug #10796)

2001-09-20  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (save_draft): Update to reflect changes to
    mail_get_folder.

2001-09-20  Iain Holmes  <iain@ximian.com>

    * e-msg-composer.c (get_file_content): Open the file with O_CREAT so
    that if it doesn't exist, it's created. Never return a NULL as this
    could potentially crash on Solaris.

2001-09-18  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Attach an X-Evolution-Format
    header so if people re-edit a message in say their Sent folder, we
    will preserve format preferences.
    (e_msg_composer_get_message_draft): Don't attach
    X-Evolution-Format headers here since it is now done in
    build_message().
    (e_msg_composer_new_with_message): Make sure to remove *all*
    X-Evolution headers by using the mail-tools functions.

2001-09-16  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment-bar.c (update): Don't
    gtk_object_destroy() the pixbuf loader, unref it instead.

    * e-msg-composer-hdrs.c (destroy): Don't forget to free the
    private structure.

2001-09-14  Ettore Perazzoli  <ettore@ximian.com>

    [Automake 1.5 fixes pointed out by Richard Boulton
    <richard@tartarus.org>, as per #9258.]

    * Makefile.am (CLEANFILES): Set directly with `=' instead of `+='.

2001-09-13  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (map_default_cb): free the text values we get
    from the property bag and release the property bag properly.

2001-09-12  JP Rosevear  <jpr@ximian.com>

    * evolution-composer.c (corba_recipientlist_to_destv): null
    terminate the destination vector

2001-09-10  Jeffrey Stedfast  <fejj@ximian.com>

    * evolution-composer.c (init): Don't call new_with_sig_file, it no
    longer exists.

    * e-msg-composer.c (setup_ui): Make sure that the session is
    non-NULL.
    (menu_file_send_cb): And here too.
    (e_msg_composer_new_with_sig_file): Removed.

2001-09-10  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Wrap the S/MIME code in ifdef
    SMIME_SUPPORTED which isn't defined but by some later version will
    be.
    (setup_ui): And again here.

2001-09-09  Maciej Stachowiak  <mjs@noisehavoc.org>

    * Makefile.am: Add VFS_CFLAGS so things don't break when the
    gnome-vfs headers move.

2001-09-08  Jon Trowbridge  <trow@ximian.com>

    * evolution-composer.c (corba_recipientlist_to_destv): Originally
    was corba_recipientlist_to_glist.
    (impl_Composer_set_headers): Use corba_recipientlist_to_destv, new
    destination-based api.

    * e-msg-composer.c (build_message): Get rid of that 'sending'
    stuff.  That was a bad idea.
    (e_msg_composer_new_with_message): Apply the revised api and work
    with vectors of destinations rather than just lists.
    (e_msg_composer_get_recipients): Added.  Returns the full set of
    recipient destinations in a vector.

    * e-msg-composer-hdrs.c: Removed free_destv function.  We use
    e_destination_freev instead.
    (e_msg_composer_hdrs_get_to): Changed to return a vector of
    EDestinations.  This function now works.
    (e_msg_composer_hdrs_get_cc): Ditto.
    (e_msg_composer_hdrs_get_bcc): Ditto.
    (e_msg_composer_hdrs_get_recipients): Added.  Returns a vector of
    EDestinations that is the union of the to, cc and bcc lines.
    (e_msg_composer_hdrs_set_to): Changed to take a vector of
    EDestinations, rather than a GList.
    (e_msg_composer_hdrs_set_cc): Ditto.
    (e_msg_composer_hdrs_set_bcc): Ditto.
    (e_msg_composer_hdrs_to_message): Use our new, improved API, rather
    than a bunch of poking around in BonoboPropertyBags, etc.

2001-09-07  Dan Winship  <danw@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients_from_destv): Remove some
    debugging messages that don't check for NULL strings and crash
    Solaris.

2001-09-06  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (save): Have to specify a mode when using
    O_CREAT.
    (handle_multipart_alternative, handle_multipart,
    e_msg_composer_new_with_message): Update for mail_get_message_body
    change.

2001-09-05  Ettore Perazzoli  <ettore@ximian.com>

    * e-msg-composer.c (autosave_manager_query_load_orphans):
    s/Evolution/Ximian Evolution/.
    (do_exit): Set the title to be "Warning: Modified Message".

2001-08-29  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer.c (e_msg_composer_get_message_draft): Pass
    in FALSE as the 'sending' arg to e_msg_composer_get_message.
    (build_message): Added a 'sending' arg, which is passed to
    e_msg_composer_get_message.
    (e_msg_composer_get_message): Added a 'sending' arg,
    which gets passed directly on to build_message.

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_to_message): Added
    a "sending" arg, which should be TRUE if the message is being
    sent now (rather than being autosaved, etc.).  The address
    use scores are only updated when sending. (Bug #8332)
    Removed obsolete (#if 0/#endif-ed) code.

2001-08-22  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients_from_destv): Added.  Try
    to properly handle contact lists in which the addresses of the
    list members should be hidden.
    (e_msg_composer_hdrs_to_message): Changed to extract the
    destination data from the entries and pass it along to
    set_recipients_from_destv.

2001-08-22  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (save): When reporting an error, use
    my_file_name instead of file_name since file_name can be NULL.

2001-08-21  Ettore Perazzoli  <ettore@ximian.com>

    * e-msg-composer.c (autosave_manager_query_load_orphans):
    s/attempt recovery/try to recover them/.

2001-08-19  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (save_draft): Reset the "changed" state to
    FALSE after a successful save.

2001-08-17  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (show_attachments): Toggle the
    View->Attachments menu item. This fixes bug #6107.

2001-07-12  Peter Williams  <peterw@ximian.com>

    * e-msg-composer.c (map_default_cb): New function. Figure out
    which widget gets the default and assign it. Harder to do than
    it sounds.
    (e_msg_composer_construct): Hook map_default_cb up to the "map"
    signal.
    (set_focus_to_editor): Removed.
    (set_focus_to_editor_idle): Removed.
    
2001-08-10  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients): Removed comment about
    the need to resolve nicknames properly, because we now do that.

2001-08-09  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (set_focus_to_editor): new helper function,
    just setup idle callback to grab focus
    (set_focus_to_editor_idle): grab focus for editor, before we have
    better solution, it run grab-focus command on editor control
    (e_msg_composer_construct): call prepare_engine here, set focus to
    editor

2001-08-10  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (autosave_manager_query_load_orphans): Don't
    forget to closedir() when we finish with dir.

2001-08-09  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (from_changed_cb): Set the smime/pgp
    always-sign options when here so it updates when the user changes
    his/her identity.

2001-08-08  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (e_msg_composer_get_message_draft): Set the
    PGP/MIME and S/MIME options to FALSE before getting the message
    draft and restore the values afterward.

2001-08-06  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (add_inlined_image): Use g_basename().
    (setup_ui): Get the default charset from the mail config db.

2001-08-06  Radek Doulik  <rodo@ximian.com>

    * listener.c (impl_event): handle delete event

2001-07-31  Peter Williams  <peterw@ximian.com>

    * e-msg-composer.c (setup_ui): Set the config path for the composer so
    that the customize toolbar command works.

2001-07-31  Jason Leach  <jleach@ximian.com>

    * e-msg-composer.c: Use Tuomas' and Jakub's new (and beautiful)
    icons for Send and Send Later in the toolbar and menus.

2001-07-30  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (message_rfc822_dnd): Properly add the
    message/rfc822 part.

2001-07-27  Jason Leach  <jleach@ximian.com>

    * e-msg-composer.c (get_signature_html): "-- \n" is 4 chars long,
    so when checking if it's already in the sig, strncmp should check
    4 chars, not 3.

2001-07-26  Peter Williams  <peterw@ximian.com>

    * e-msg-composer.c (get_signature_html): Correct our manually inserted
    signature dash thingie (it was missing the space).

2001-07-26  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients): Get "destinations",
    rather than "text" from the entry_widget.  (The getters/setters in
    the control have been made more symmetric.)

2001-07-18  Jason Leach  <jleach@ximian.com>

    * e-msg-composer-hdrs.c (create_from_optionmenu): Update to the
    new way of finding the default account.

2001-07-18  Iain Holmes  <iain@ximian.com>

    * e-msg-composer.c (do_exit): Use a messagebox.

2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (drag_data_received): Correctly handle
    text/uri-list's that contain more than a single file reference.

2001-07-12  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (menu_changed_charset_cb): Removed a warning
    that I don't need anymore. This code is working wonderfully ;-)

2001-07-10  Kjartan Maraas  <kmaraas@gnome.org>

    * e-msg-composer.c: Fix typo. s/sesiion/session/
    
2001-07-09  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (autosave_manager_query_load_orphans): Only ask
    once about recovery, assume if they want to recover one file they
    want to recover all of them.

2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Use
    camel_internet_address_format_address rather than
    camel_address_encode since we want display-friendly addresses.

2001-07-09  Iain Holmes  <iain@ximian.com>

    * e-msg-composer-select-file.c (file_selection_info_destroy_notify):
    Unref the file selection dialog when the data is destroyed.

2001-07-09  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (composer_shutdown): Do the
    autosave_manager_unregister at shutdown time instead of destroy
    time (by which point the contents of the window, including the
    remote editor control, will have already been destroyed).

2001-07-09  Zbigniew Chyla  <cyba@gnome.pl>

    * e-msg-composer-select-file.c: Added missing #include <config.h> to
    make translations working.

2001-07-07  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients): Make sure that our
    destination string (dest_str) is not the empty string before we
    try to use it.

2001-07-06  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (autosave_manager_new): add missing static.
    (best_encoding): make sure we don't try to call iconv_open with a
    NULL tocode.
    (autosave_manager_query_load_orphans): remove zero length orphans
    so that they don't clutter things up.

2001-07-06  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    Convert the filename string to UTF8 before setting it on the
    CamelMimePart because that code expects it to be in UTF8.

2001-07-06  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (autosave_manager_query_load_orphans): only ask
    if there are actually contents in the file.  Asking about an
    emptry fil is not very useful.
    (autosave_load_draft): add some sanity chacks.
    (autosave_run_foreach_cb): remove debugging warning.
    (autosave_manager_new): add a missing static.

2001-07-06  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (autosave_manager_unregister): make sure we
    only remove the file if we think we saved it properly.
    (autosave_manager_stop): make sure we set the timeout back to 0 so
    that we will restart next time since we stop the timer when there
    are no active composers.
    (destroy): move this to the beginning of the destroy process.
    (autosave_save_draft): add a return value indicating success.
    (autosave_manager_register): go ahead and ask next time.

2001-07-05  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c: add ask argment.
    (autosave_manager_query_load_orphans): move the load loop out of
    the dir reading loop.
    (autosave_manager_new): move initialization out or register.
    (autosave_manager_register): protect against recursion with ask.
    (init): call new, this still needs to be moved.

2001-07-05  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (save): Play the "File exists, overwrite?"
    game.
    (autosave_run_foreach_cb): Change the return val from a gboolean
    to void.

2001-07-04  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (autosave_load_draft): attach send and postpone
    handlers. and be more tolerant of errors.

2001-07-03  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (autosave_save_draft): make sure we seek to the
    begining.

    * e-msg-composer.h: remove the timer id.

    * e-msg-composer.c: use autosave manager.
    (autosave_save_draft): moved initialization to
    autosave_init_file. Only save the buffer if we get a valid
    message.
    (autosave_load_draft): unlink the old file, we own it now. and
    unref the stream when we are done with it.
    (autosave_is_owned): check if we own the file, this needs to be
    extended to check for other valid processes.
    (autosave_query_load_orphans): make this search through the
    managers list as it walks the dir.
    (autosave_query_load_orphans): make sure we use the full path.
    (autosave_run_foreach_cb): timeout foreach handler.
    (autosave_run): the timeout function.
    (autosave_start): start timer.
    (autosave_stop): stop timer.
    (autosave_register): register a composer with the autosave manager.
    (autosave_unregister): unregister a composer.
    (destroy): unregister the composer, everything is okay.
    (init): register the composer.

2001-07-02  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.h: add autosave members.
    
    * e-msg-composer.c (autosave_query_load_orphans): query the user to
    check if they want to load any orphans we've found.
    (autosave_query_cb): the dialog callback.
    (autosave_is_orphan): test if if a particular file is orphaned.
    (autosave_load_draft): load a message from an autosave file.
    (autosave_save_draft): save the current buffer to the autosave file.

2001-07-02  Christopher James Lahey  <clahey@ximian.com>

    * Makefile.am (INCLUDES): Added $(BONOBO_CONF_CFLAGS).

2001-07-02  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart): Set the
    user-chosen charset.

    * e-msg-composer.c (menu_change_charset_cb): New callback function
    to get the user-set charset.
    (init): Set the charset to NULL.
    (best_charset): Take a default_charset param that holds the value
    the user set for this particular message using the menu.
    (destroy): Free the charset.

2001-07-02  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (setup_ui): Construct an e-charset-picker
    bonobo-ui menu.
    (menu_change_charset_cb): 

2001-06-30  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients): Touch all of our
    EDestinations before we unref them, updating the last-use records
    in the addressbook.

2001-06-29  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (e_msg_composer_show_sig_file): remove now
    invalid argument in the documentation.

2001-06-28  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c: removed obsolete e_msg_composer_get_sig_file

    * e-msg-composer.h: removed sig_file field from EMsgComposer

    * e-msg-composer.c (e_msg_composer_get_sig_file_content): exported
    (get_file_content): make it const safe
    (e_msg_composer_get_sig_file_content): refactored, don't try to be
    clever about signature filename, as it's exact now
    (get_signature_html): use has_html_signature flag
    (e_msg_composer_show_sig_file): renamed from
    e_msg_composer_set_sig_file, removed sig_file parameter as it's
    obsolete now
    (e_msg_composer_new_with_sig_file): removed obsolete parameters

2001-06-27  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (menu_file_insert_file_cb): make hook this up.
    (get_sig_file_content): use get_file_content.
    (get_file_content): make this usable for both insertion and
    signatures.
    (read_file_content): added helper function to read file.

2001-06-27  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c: Added a pixcache array for special pixmaps to
    use in the composer.
    (setup_ui): Set the pixcache.

2001-06-21  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (menu_file_send_cb): Emit the POSTPONE signal
    if we are offline.
    (setup_ui): If we are offline, change the Control+Enter accel to
    be on the SendLater menu item.

2001-06-20  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (save_draft): Save the formatting preference
    for this message draft using a X-Evolution-Format header.
    (e_msg_composer_new_with_message): Restore the format editing
    preference and also remove any other X-Evolution-* headers that we
    may have set.

2001-06-20  Dave Camp  <dave@ximian.com>

    * Evolution-Composer.idl: Changed attachData to accept a sequence of
    chars rather than a string.

    * evolution-composer.c (impl_Composer_attach_data): Changed the 'data'
    argument to a GNOME_Evolution_Composer_AttachmentData, and pass
    data->_buffer and data->_length to camel_mime_part_set_content().

2001-06-19  JP Rosevear  <jpr@ximian.com>

    * evolution-composer.c (impl_Composer_send): send the message

    * Evolution-Composer.idl: add a "send" method to send a message
    without showing the editor

2001-06-19  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (e_msg_composer_construct): Don't define the
    drop_types here.
    (drag_data_received): Implement message/rfc822 dnd drop type
    handling.

2001-06-12  Dan Winship  <danw@ximian.com>

    * e-msg-composer-attachment.glade: Replace the disposition option
    menu with a checkbox.

    * e-msg-composer-select-file.c
    (e_msg_composer_select_file_attachment): New function to select a
    file to attach. Adds a "suggest inline disposition" checkbox.

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new): Add
    a disposition argument rather than always defaulting to
    "attachment".
    (struct _DialogData, ok_cb, e_msg_composer_attachment_edit):
    Update for optionmenu->checkbox change for disposition.

    * e-msg-composer-attachment-bar.c (add_from_file): Add a
    disposition argument.
    (add_from_user): Use e_msg_composer_select_file_attachment, pass
    chosen disposition to add_from_file.
    (e_msg_composer_attachment_bar_attach): Pass "attachment" to
    add_from_file for the disposition.

2001-06-11  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (best_charset): Fix again... don't leave
    *encoding uninitialized in the US-ASCII case.

2001-06-11  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer.c (e_msg_composer_construct): Rearranged
    gtk_widget_show()s a bit to fix Bug#3204.  The composer is now
    (like the rest of Evo) properly network transparent.

2001-06-08  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer.c (save_draft): When saving a draft, attach
    information about the From: identity via X-Evolution-Account.
    This lets us select the correct identity when we edit it later.
    (e_msg_composer_new_with_message): If the message we are editting
    is tagged with an account (via X-Evolution-Account), make sure
    that the composer chooses that account's identity by default.

2001-06-08  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (best_charset): Don't use the default charset
    if the message is US-ASCII.

2001-06-07  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (e_msg_composer_new_with_sig_file): just set
    sig_file field, but don't actualy insert signature, it will be
    done by format menu item callback
    (e_msg_composer_set_body_text): don't set signature here

2001-06-01  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): If user is trying to sign
    his/her message, try first to use the key that they might have
    provided in their account settings. If that was never set, default
    to their email address. Also respect their config option to
    encrypt-to-self.

2001-05-31  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Oops. Fix a few compile problems.

2001-05-31  Christopher James Lahey  <clahey@ximian.com>

    * Makefile.am (HTML_EDITOR_GENERATED): Use GTKHTML_DATADIR here.

2001-05-31  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Fixed up the S/MIME
    signing/encrypting code to work with the new API.

2001-05-31  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (best_encoding): Add a missing iconv_close

2001-05-30  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (build_message): Use the config-specified
    default character set (which in turn defaults to the locale
    character set) as the default for encoding non-US-ASCII messages,
    assuming it works. Fall back to camel_charset_best() if it fails.
    Also, pick the Content-Transfer-Encoding based on how the data
    looks in the destination charset, not in UTF8.

    While I was here, I also refactored a bunch and tried to reduce
    redundant code. There are still too many places that set the
    transfer-encoding on the plaintext part though... Also, I think
    some more cleanliness could happen if the sign/encrypt interfaces
    returned CamelMultiparts instead of CamelMimeParts.

2001-05-28  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment-bar.c (update): Use
    e_utf8_to_gtk_string() on the description of the attachment since
    camel stores these as utf-8 strings.

2001-05-28  Jason Leach  <jleach@ximian.com>

    * Makefile.am (INCLUDES): srcdir != builddir fix.

2001-05-24  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Populate the
    extra_hdr_* arrays with any non-special-case headers.
    (is_special_header): New convenience function to determine if a
    header is a "special" header or not.

2001-05-24  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (menu_edit_delete_all_cb): new callback
    (menu_edit_delete_all_cb): set orig to 0 too
    (menu_edit_delete_all_cb): be more careful about text color and
    style

2001-05-23  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (e_msg_composer_set_sig_file): set orig to 0

2001-05-18  Jon Trowbridge  <trow@ximian.com>

    * e-msg-composer-hdrs.c (set_recipients): Properly unserialize the
    string returned by the "text" property of the bonobo control,
    convert it into EDestinations, and use them to get the e-mail
    addresses of our recipients.

2001-05-17  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (save_draft): Draft messages should be marked
    read.

2001-05-16  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Added S/MIME sign/encrypt code.
    (init): Initalize smime_sign/encrypt.
    (e_msg_composer_get_smime_encrypt): new
    (e_msg_composer_set_smime_encrypt): new
    (e_msg_composer_get_smime_sign): new
    (e_msg_composer_set_smime_sign): new
    (menu_security_smime_sign_cb): new
    (menu_security_smime_encrypt_cb): new
    (setup_ui): Setup the UI for S/MIME stuff.

2001-05-10  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): If we are creating a message
    with only a single part (ie no attachments and we will not be
    signing/encrypting the part) then `part = CAMEL_MIME_PART(message)` 
    otherwise create a new MIME part and set it's content-object as the 
    message's content-object at a later date.

2001-05-09  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (add_inlined_image): Don't wrap content-id with
    brackets here as it is now done internally in camel.

2001-05-03  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (get_signature_html): put signature in 100%
    width table
    (delete_old_signature): look only for first flow with signature == 1
    (e_msg_composer_new): don't insert <BR>
    (e_msg_composer_new_with_sig_file): ditto
    (delete_old_signature): don't delete whole signature paragraph,
    but just it's content
    (delete_old_signature): if signature isn't found, insert new empty
    paragraph to end of document for new signature
    (e_msg_composer_set_sig_file): delete signature always
    (e_msg_composer_set_sig_file): don't place signature to the end of
    document, but place it where previous one was (if there wasn't
    then new one is appended to the document)

2001-05-02  Radek Doulik  <rodo@ximian.com>

    * listener.c (impl_event): do automagic indenting only when
    in_signature_insert is FALSE

    * e-msg-composer.c (e_msg_composer_set_sig_file): do indent-zero
    before signature inserting
    (e_msg_composer_set_sig_file): use in_signature_insert flag

2001-05-01  Radek Doulik  <rodo@ximian.com>

    * listener.c (impl_event): set signature to 0 in newly created
    empty paragraphs
    (clear_signature): new helper function

2001-04-26  Dan Winship  <danw@ximian.com>

    * Makefile.am (INCLUDES): Remove UNICODE_CFLAGS

2001-04-25  Radek Doulik  <rodo@ximian.com>

    * e-msg-composer.c (e_msg_composer_set_send_html): block/unblock
    redraw

    * listener.c (impl_event): reflect object data type change

    * e-msg-composer.c (get_sig_file_content): renamed from
    get_signature
    (get_signature_html): new helper function, uses
    get_sig_file_content
    (set_editor_text): removed signature parameters
    (from_changed_cb): new signal handler, sets signature by identity
    change
    (delete_old_signature): new function, deletes old signature from
    the document
    (e_msg_composer_set_sig_file): new method, set's signature
    filename
    (e_msg_composer_mark_text_orig): removed (obsolete)

    * e-msg-composer-hdrs.c: added signal FROM_CHANGED

2001-04-21  Duncan Mak  <duncan@ximian.com>

    * e-msg-composer.c (e_msg_composer_construct): Set window_icon to
    "compose-message.png" for the composer window.

    Did #include <libgnomeui/gnome-window-icon.h> so we could use
    gnome_window_icon_set_from_file() here.

2001-04-17  Radek Doulik  <rodo@ximian.com>

    * listener.c (reply_indent): more auto-indentation magic

2001-04-12  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Use the mail-crypto pgp-mime
    wrappers.
    (build_message): s/CAMEL_PGP_HASH_TYPE_SHA1/CAMEL_CIPHER_HASH_SHA1

2001-04-11  Dan Winship  <danw@ximian.com>

    * e-msg-composer-select-file.c (create_file_selection): Fix
    previous.

2001-04-11  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-select-file.c (create_file_selection): Set the
    default filename to the user's homedir.

2001-04-04  Kjartan Maraas  <kmaraas@gnome.org>

    * e-msg-composer-attachment.c: Fix headers.
    * e-msg-composer-hdrs.c: Same here.
    
2001-03-29  Kjartan Maraas  <kmaraas@gnome.org>

    * e-icon-list.c: Replace #include <gtk/gtk.h>
    * e-msg-composer-attachment-bar.c: Replace #include <gnome.h>
    * e-msg-composer-attachment-bar.h: Remove #include <gnome.h>
    * e-msg-composer-attachment.c: Remove #include <gnome.h>
    * e-msg-composer-attachment.h: Same here.
    * e-msg-composer-hdrs.c: Replace #include <gnome.h> and <bonobo.h>
    * e-msg-composer-hdrs.h: Replace #include <gnome.h>
    * e-msg-composer-file.c: #include <gtk/gtkmain.h>, <gtk/gtksignal.h>
    * e-msg-composer.c: Replace #include <bonobo.h>, <gnome.h>
    * e-msg-composer.h: Replace #include <gnome.h> and <bonobo.h>
    * evolution-composer.c: Replace #include <bonobo.h>
    * listener.c: Same here.
    
2001-03-28  Dan Winship  <danw@ximian.com>

    * e-msg-composer.c (save_draft): Use the drafts folder specified
    by the account, if possible. Also, fix the setting of "send_html"
    after saving the draft in case the user plans to keep editting...

2001-03-27  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer.c (e_msg_composer_set_send_html): set the
    FormatHTML property on the editor to let it know the mode.
    (e_msg_composer_construct): set the property at construct time.

2001-03-26  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new): Set
    the mime part content-id.

2001-03-19  Radek Doulik  <rodo@ximian.com>

    * listener.c (reply_indent): set default text color

2001-03-17  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_get_reply_to): Make
    sure the reply_to text is non-NULL before trying to pass it off to
    the address parser.

2001-03-13  Dan Winship  <danw@ximian.com>

    * e-msg-composer-attachment.c (update_mime_type): Use
    gnome_vfs_mime_type_from_name rather than gnome_vfs_mime_info,
    since the entered filename doesn't have to be a real file on disk.
    Deal with it returning NULL too.    
    (e_msg_composer_attachment_edit): Select the right item in the
    inline/attachment menu.

    * e-msg-composer-hdrs.c: s/Pair/EMsgComposerHdrPair/. Namespace!

2001-03-12  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.h: Added view_replyto member.

    * e-msg-composer.c (e_msg_composer_get_visible_flags): Find out if
    we want to view the Reply-To header.
    (e_msg_composer_set_view_replyto): A new function to set the state
    of the replyto header.
    (menu_view_replyto_cb): Callback for setting the ReplyTo state.
    (set_config): Make static.
    (setup_ui): Setup the ReplyTo bonobo stuff.
    (load_from_property_bag): More defaults for the ReplyTo, yay.
    (load_from_gnome_config): Again...
    (e_msg_composer_get_view_bcc): Implemented.
    (e_msg_composer_get_view_cc): Implemented.
    (e_msg_composer_get_view_from): Implemented.
    (e_msg_composer_get_view_replyto): Implemented.

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_get_reply_to_entry):
    New function, yay.
    (e_msg_composer_hdrs_get_reply_to): Another new function.
    (e_msg_composer_hdrs_set_reply_to): Yet another new function...
    (create_headers): Create the reply-to header.
    (attach_headers): Attach the reply_to.
    (headers_set_visibility): Set the reply_to visibility.
    (e_msg_composer_hdrs_to_message): Set the message's reply-to here
    based on the user-set reply-to header.

2001-03-06  Miguel de Icaza  <miguel@ximian.com>

    * e-msg-composer.c (set_config): New function.  Used to store
    integer values into the configuration engine.  Handles the case of
    Bonobo-conf being installed, or falls back to gnome_config.

    * e-msg-composer-hdrs.c (add_header): Renamed to be
    header_new_recipient().  Now we take care of the other cases in
    create_headers, which is a lot nicer now.
    
    (create_optionmenu): Removed extra "name" argument which was not
    being used anyways (the only arg passed was From:).
    (init): Removed all the redundant NULL initialization by using
    nice g_new0
    
    (create_headers): New function, much cleaner. 

    Use of Pair structure everywhere instead of individual widgets to
    keep track of which ones are visible and which ones are not.
    
    * e-msg-composer.c (setup_ui): Handle ViewFrom and ViewBCC
    commands. 
    (menu_view_bcc_cb, menu_view_from_cb): New functions that
    implement the features described.

    (menu_format_html_cb): Removed unrequired test, as
    e_msg_composer_set_send_html already optimizes the case of the
    state being the same.
    (menu_security_pgp_encrypt_cb): Remove redundant code.
    (menu_security_pgp_sign_cb): ditto.

2001-03-02  Jeffrey Stedfast  <fejj@ximian.com>

    * e-icon-list.c (icon_new_from_pixbuf): Added a comment reminding
    us that we should probably not force a particular font in the icon
    caption.

2001-02-27  Dan Winship  <danw@ximian.com>

    * evolution-composer.c (factory_fn): If
    !mail_config_is_configured(), give an error and return NULL.

2001-02-22  Ettore Perazzoli  <ettore@ximian.com>

    * Makefile.am (INCLUDES): Add `-I$(top_srcdir)/shell'.

2001-02-21  Not Zed  <NotZed@Ximian.com>

    * e-msg-composer.c (menu_file_save_draft_cb):
    (exit_dialog_cb):  Use mail_append_mail to save to drafts instead
    of custom thread handler.

2001-02-19  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Handle exceptions a little
    nicer and pop up a nice GnomeDialog with the error message - also,
    don't return a CamelMimeMessage if it fails to sign/decrypt
    because we want to let the user decide what to do based on the
    error message he/she gets.

2001-02-15  Dan Winship  <danw@ximian.com>

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_set_from_account): If
    @account_name is NULL, pick the default account rather than giving
    a g_warning.

    * e-msg-composer.c (e_msg_composer_set_headers): Note in the
    doc comment that @from can be NULL if you want the default account
    (since there is code that expects this).

2001-02-13  Jeffrey Stedfast  <fejj@ximian.com>

    * evolution-composer.c (corba_recipientlist_to_glist): Use the
    camel-internet-address code to format the address rather than
    doing it the broken way.

2001-02-10  Jeffrey Stedfast  <fejj@ximian.com>

    * evolution-composer.c (impl_Composer_set_headers): Updated. We
    might want to change the corba interface for this to allow setting
    the from-address as well.

    * e-msg-composer.c (e_msg_composer_new_with_message): Updated.
    (e_msg_composer_set_headers): Now takes a 'From' argument so that
    we can try to pre-determine the account the user will want to send
    from.

2001-02-11  Gediminas Paulauskas <menesis@delfi.lt>

    * e-msg-composer-attachment.glade.h: removed.
    * e-msg-composer-attachment.glade: do not write strings to above.
    * Makefile.am: don't include glade.h in EXTRA_DIST.
    
2001-02-10  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart):
    multipart/* is another mime type we DO NOT want to encode ;-)

2001-02-06  Christopher James Lahey  <clahey@ximian.com>

    * e-msg-composer-hdrs.c (address_button_clicked_cb, add_header):
    Set the default argument to
    GNOME_Evolution_Addressbook_SelectNames_activateDialog correctly.

2001-01-30  Larry Ewing  <lewing@ximian.com>

    * e-msg-composer-hdrs.c (create_optionmenu): make sure we convert
    from utf-8 before creating the option menu items.

2001-01-25  Jason Leach  <jasonleach@usa.net>

        (Moving the flag for has_changed from the Hdrs to the Composer
     itself. Providing public methods to set/unset a composer as
     changed. Adding attachments now flags the composer as changed)
    
    * e-msg-composer.c (e_msg_composer_unset_changed): New function.
    (e_msg_composer_set_changed): New function.

    * e-msg-composer.c (hdrs_changed_cb): Callback to the new signal,
    uses the new composer_set_changed.
    (attachment_bar_changed_cb): Add a call to the new
    composer_set_changed.
    
    * e-msg-composer-hdrs.c (class_init): New signal "hdrs_changed" to
    tell the parent composer that any of the headers have changed.
    (addressbook_entry_changed): emit the new signal here.
    (entry_changed): And here.

2001-01-24  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (menu_security_pgp_encrypt_cb): New callback.
    (menu_security_pgp_sign_cb): Another new callback.
    (setup_ui): Added initialization for the PGP sign and encrypt
    bonobo menu items.
    (e_msg_composer_set_pgp_encrypt): Change the Bonobo UI name to
    SecurityPGPEncrypt.
    (e_msg_composer_set_pgp_sign): Change the Bonobo UI name to
    SecurityPGPSign.

2001-01-21  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Fixed some memory leaks
    dealing with content-type temp strings. Also implemented code to
    sign and/or encrypt the message if the user has specified that it
    should.

2001-01-20  Jason Leach  <jasonleach@usa.net>

    (Fix #1222: doing File->New->Mail Message doesn't include .sig)
    
    * evolution-composer.c (init): Get the users account information,
    see if they've specified a sig file, if they do, create a composer
    with that sig.

2001-01-19  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-hdrs.c (create_optionmenu): Use "Full Name
    <address>" for the label in the menu rather than the account
    name. Specify the account name only if it's not the same as the
    address.

2001-01-19  Jason Leach  <jasonleach@usa.net>

    * e-msg-composer-hdrs.c (create_addressbook_entry): Listen for
    property bag changes to "entry_changed" on here, which means on
    the To, Cc, and Bcc entries.
    (addressbook_entry_changed): New function that gets called when
    "entry_changed" property is changed (to TRUE).

2001-01-18  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer.c (build_message): Updated to reflect changes to
    e_msg_composer_hdrs_get_from().

    * e-msg-composer-hdrs.c (set_recipients): Don't do anymore utf8
    conversions, the widget already does this (or should unless there
    is brokenness).
    (e_msg_composer_hdrs_get_from): Return a CamelInternetAddress like
    we should.
    (e_msg_composer_hdrs_to_message): Update to reflect changes made
    the the above function.

2001-01-12  Miguel de Icaza  <miguel@gnu.org>

    * Makefile.am: Make the composer a standard library, not a libtool
    one.  Nobody ever uses it as a shared library and it is not
    installed. 

2001-01-17  Jason Leach  <jasonleach@usa.net>

    (Bug #1192: Set the Composer window title to something useful)
    
    * e-msg-composer.c (e_msg_composer_construct): Connect up the new
    signal here.
    (subject_changed_cb): Set the composer window title to the subject
    as it's changed, or if it goes blank make it the default "Compose
    a message".

    * e-msg-composer-hdrs.c (class_init): Create a new signal
    "subject_changed".
    (entry_changed): Emit the signal here when the subject entry is
    changed.
    
2001-01-17  Iain Holmes  <iain@ximian.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_edit):
    Get the option menu from the XML file.
    (ok_cb): Set the attachment disposition depending on the option
    menu results.
    (option_menu_get_history): Really should have been in GTK at some
    point.

    * e-msg-composer-attachment.glade: Add the option menu.

2001-01-17  Michael Meeks  <michael@helixcode.com>

    * evolution-composer.c (enum_objects): comment out for now
    to ease compat issues.
    (evolution_composer_construct): pass in NULL for the item
    handler enum_objects fn + calm warning.

2001-01-17  JP Rosevear  <jpr@ximian.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Use the 
    to/cc/bcc addresses insted of just the to.

2001-01-17  Federico Mena Quintero  <federico@ximian.com>

    * e-icon-list.[ch]: Ximianified email addresses.

2001-01-16  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer.c (e_msg_composer_mark_text_orig): publicate
    mark_orig_text
    (set_editor_text): don't call mark_orig_text, let it for reply

2001-01-15  Jason Leach  <jasonleach@usa.net>

    (Plug leaking the subject string on each message sent)
    
    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_get_subject): Don't
    strdup before returning the subject, it's already been strdup'd
    from the gtk_object_get().

2001-01-13  Jason Leach  <jasonleach@usa.net>

    (Fix Bug #1083: Composer IDLs not getting installed)
    
    * Makefile.am: add @idl and @idl_DATA vars.

2001-01-12  Jeffrey Stedfast  <fejj@ximian.com>

    * e-msg-composer-hdrs.c (create_optionmenu): Oops. Make sure to
    attach the item to the menu ;-)

2001-01-12  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (build_message): Call set_from_account which
    means we no longer have to do all the crap involved in formatting
    strings into an internet-address.
    (e_msg_composer_get_preferred_account): New access function.

    * e-msg-composer-hdrs.c (add_header): case COMBOBOX has changed to
    OPTIOMENU.
    (create_optionmenu): Update to use an optionmenu of accounts.
    (from_changed): New callback for the From optionmenu.
    (setup_headers): s/COMBOBOX/OPTIONMENU
    (init): Set the account and from_options to NULL.
    (e_msg_composer_hdrs_get_from): Updated.
    (destroy): free the from_options.
    (e_msg_composer_hdrs_set_from_address): Renamed from set_from
    because it no longer takes a string arg but rather an account arg.

2001-01-12  Miguel de Icaza  <miguel@ximian.com>

    * e-msg-composer-hdrs.c (add_header): Only attach to "changed" if
    the widget is an EEntry.  The HEADER_COMBOBOX and the
    HEADER_ADDRBOOK are a ComboBox and a remote Bonobo control
    respectively. 

    * evolution-composer.c (get_object): Move getObject functionality
    here from e-msg-composer.c

2001-01-11  Miguel de Icaza  <miguel@ximian.com>

    * e-msg-composer-hdrs.c (create_dropdown_entry): Only set the
    popdown strings if we have anything to popdown.

2001-01-10  Miguel de Icaza  <miguel@helixcode.com>

    * evolution-composer.c (evolution_composer_construct): Add an
    ItemContainer Bonobo interface to allow client applications to
    locate the Message Composer component.

2001-01-11  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (menu_file_save_draft_cb): New callback to save
    draft. Fixes bug #1045.

2001-01-10  Miguel de Icaza  <miguel@helixcode.com>

    * e-msg-composer.c: Removed more UNSAFE stuff.  Maybe we should
    kill this macro, and have people that want these broken things
    define their own macros.
    (setup_item_container): Add an ItemContainer bonobo interface to
    handle options to the window component.

2001-01-08  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (create_dropdown_entry): Updated for new
    config code - this time it works!

2001-01-08  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (create_dropdown_entry): Reverted back to
    old config code temporarily until I get the new config code
    working 100%.

2001-01-07  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (create_dropdown_entry): Updated to
    reflect changes to the mail-config API.

2001-01-05  Radek Doulik  <rodo@helixcode.com>

    * listener.c (impl_event): disable indenting for now, it crashes
    editor

2001-01-03  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (do_exit): If the headers have changed, then
    continue with the prompt else just destroy the window.

    * e-msg-composer-hdrs.c (init): Initialize has_changed to FALSE.
    (entry_changed): New callback to set the value of has_changed.
    (add_header): Attach the "changed" signal.

2001-01-02  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_edit): 
    * e-msg-composer-attachment-bar.c (update): Use
    header_content_type_simple, not header_content_type_format.

    * e-msg-composer-hdrs.c (create_dropdown_entry): Call
    e_utf8_to_gtk_string on the combobox strings.

2000-12-28  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (handle_multipart_alternative,
    handle_multipart, e_msg_composer_new_with_message): Use
    CamelContentType instead of GMimeContentField.

    * e-msg-composer-attachment.c (e_msg_composer_attachment_edit): 
    * e-msg-composer-attachment-bar.c (update, attach_to_multipart):
    Use CamelContentType, and use the header_content_type_* functions
    rather than operating on the structure by hand.

2000-12-15  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_get_pgp_encrypt): New function
    to get whether or not to encrypt the message.
    (e_msg_composer_set_pgp_encrypt): New function to set encryption.
    (e_msg_composer_get_pgp_sign): New function to get whether or not
    to sign the message.
    (e_msg_composer_set_pgp_sign): New function to set pgp_sign.
    (init): Initialize pgp_sign and pgp_encrypt to FALSE.

2000-12-14  Christopher James Lahey  <clahey@helixcode.com>

    * e-msg-composer-hdrs.c (add_header): Made it so that carriage
    return doesn't insert a newline in the subject entry.

2000-12-12  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (set_entry): Don't convert the utf-8
    string to a gtkstring because the widget expects to get a utf-8
    string.

2000-12-12  Dan Winship  <danw@helixcode.com>

    * Makefile.am (EXTRA_DIST): Add $(IDLS). (From campd.)

2000-12-07  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer.c (prepare_engine): added warnings
    (prepare_engine): updated to IDL:GNOME/GtkHTML/Editor/Engine:1.0

    * Makefile.am: renamed HTMLEditor* to Editor*, added Editor-common.c:
    $(HTML_EDITOR_GENERATED) rule

2000-12-05  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (add_recipients): Use camel to construct the
    list of recipients rather than just strchr(recips, ',') which is
    very prone to errors.

2000-11-03  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-attachment-bar.c (update): Pass NULL
    instead of icon_name to the e_icon_list_append_pixbuf
    function.
    (init) Take the font size into account when setting the
    height of the bar.

2000-11-02  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-attachment-bar.c (update): Use the 
    pixbuf_for_mime_type function to get the icon.
    (pixbuf_for_mime_type): Functino that searches nautilus/
    and mc/ for icon files.

2000-11-15  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer.c (prepare_engine): update namespace

    * updates for HTMLEditor API changes

    * e-msg-composer.c: added #include <libgnomevfs/gnome-vfs.h>

    * e-msg-composer.h: e_msg_composer_guess_mime_type renamed and
    moved mime_guess_type_from_file_name from camel as it uses VFS

2000-11-14  Radek Doulik  <rodo@helixcode.com>

    * listener.c (reply_indent): rename command to runCommand

    * e-msg-composer.c: updated to HTMLEditor API changes

    * listener.c: updated to HTMLEditor API changes

2000-11-13  Radek Doulik  <rodo@helixcode.com>

    * listener.c (reply_indent): extracted function, does reply
    indentation, use updated editor engine api

2000-11-10  Michael Meeks  <michael@helixcode.com>

    * Makefile.am ($(HTML_EDITOR_GENERATED)): rearrnace
    includes.

2000-11-10  Larry Ewing  <lewing@helixcode.com>

    * e-msg-composer.c (build_message): set the HTML charset to utf-8
    for all the html message parts.
    (build_message): make sure we set the proper encoding on the html
    part now that it may contain utf-8 characters

2000-11-08  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer.c (e_msg_composer_clear_inlined_table): new
    function
    (destroy): use e_msg_composer_clear_inlined_table, destroy
    inlined_images hash table
    (get_signature): added in_html arg, it tells if we should use HTML
    signature
    (set_editor_text): try to use HTML signature
    (e_msg_composer_new_with_sig_file): added send_html arg to be able
    to use HTML signature

    * listener.c (resolve_image_url): don't add inlined images to
    attachement bar

    * e-msg-composer.c (add_inlined_images): new function, adds
    inlined images to multipart
    (add_inlined_image): helper function, adds one image to multipart
    (build_message): store HTML messages with inlined images to
    multipart/related

    * e-msg-composer-attachment-bar.c (add_from_file): removed
    content_id arg
    (e_msg_composer_attachment_bar_attach): likewise

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    removed content_id arg

2000-11-06  Not Zed  <NotZed@HelixCode.com>

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_to_message): Changed
    for message api changes.  Use camel_address_unformat to convert
    the editable->usable.
    (set_recipients): Same.  Now we set the recipients as
    camel_internet_address's.  Fixed a memleak indirectly.
    (decode_addresses): Removed, no longer needed.
    (create_dropdown_entry): We dont want to use _encode(), we want to
    _format, as we are displaying the result.  We can use the static
    function too to avoid the object creation, and the memory leak!
    (set_entry): Convert the args to gtk-safe characters, since the
    entry doesn't understand utf8.
    (set_recipients): And likewise do the reverse when retrieving the
    contents of the widget.

2000-11-06  Larry Ewing  <lewing@helixcode.com>

        * e-msg-composer.c (build_message): set the content type on the
        plain part of outgoing messages.
        (best_content): a helper function to get the best content type for
        the attachment.  This should probably use the helper functions in
        the future.

2000-11-06  Kjartan Maraas  <kmaraas@gnome.org>

    * e-msg-composer-attachment.c: Added #include <config.h>
    * e-msg-composer-hdrs.c: s/_HAVE_CONFIG_H/HAVE_CONFIG_H for
    working i18n.
    
2000-11-04  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new): fix
    test for regular file to !S_ISREG (statbuf.st_mode)

    * listener.c (resolve_image_url): use inline images hash table

    * e-msg-composer.c (init): create inlined images hash table
    (destroy): destroy it
    (clear_inline_images): helper function, used from
    g_hash_table_foreach_remove to destroy one inline image record

    * e-msg-composer.h: added hash table with inlined images url ->
    cid info

2000-11-03  Radek Doulik  <rodo@helixcode.com>

    * listener.c (impl_event): updated for API changed
    implemented image_url event
    (resolve_image_url): new helper function, attaches image to mail
    and returns new (resolved) url pointing to mime component

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    added conponent_id parameter

    * e-msg-composer-attachment-bar.c
    (e_msg_composer_attachment_bar_attach): added parameter content_id
    (add_from_file): likewise

2000-11-03  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-attachment.c (e_msg_composer_attachment_new):
    Don't allow attaching anything but regular files.

2000-11-03  Federico Mena Quintero  <federico@helixcode.com>

    * Makefile.am: Clean the idl-generated files properly.

2000-11-02  Peter Williams  <peterw@helixcode.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart): CamelStreamMem
    steals our byte array; we can't destroy the byte array explicitly, and
    we must unref the stream only when done using the array.

2000-11-01  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Don't create
    the To, Cc, and Bcc lists based only on the address, use both the
    name and address and camel_address_encode() them.

2000-11-01  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart): Fix the
    CTE kludge, calculate the best mime transfer encoding for the mime
    part and use that. Include e-msg-composer-select-file.h

2000-10-31  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer.c (prepare_engine): new function, tries prepare
    editor engine
    (mark_orig_text): marks original text in editor
    (set_editor_text): call mark_orig_text
    (create_composer): call prepare_engine

    * Makefile.am (IDL_GENERATED): added HTMLEditor generated files to
    IDL_GENERATED
    ($(IDL_GENERATED)): generate also files from HTMLEditor.idl
    (libcomposer_la_SOURCES): added listener.[ch]

    * e-msg-composer.h: added editor_engine and editor_listener to
    EMsgComposer

    * listener.[ch]: new files, implementation of HTMLEditor::Listener

2000-10-27  Ettore Perazzoli  <ettore@helixcode.com>

    * Makefile.am ($(IDL_GENERATED)): Get `Composer.idl' from
    `$(srcdir)' so that it builds with builddir != srcdir.

2000-10-27  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Fixed my
    not-quite-right logic so that we don't accidently set the body
    contents using a plain text attachment instead of the actual body
    of the message :-)

2000-10-25  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Populate the
    composer with any attachments.

2000-10-25  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-select-file.c (create_file_selection): Set the
    wmclass and wmclass_name for the file selectors so that Sawfish
    doesn't make the dialogs the same size as the parent.

2000-10-25  Dan Winship  <danw@helixcode.com>

    * evolution-composer.c (init): Attach send/postpone signal
    handlers to the EMsgComposer.
    (evolution_composer_factory_init): Take send/postpone signal
    handlers as arguments.

2000-10-23  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c, e-msg-composer-attachment-bar.c: add some
    missing _()s.

    * e-msg-composer-address-dialog.*, e-msg-composer-address-entry.*:
    Old cruft. Remove.

    * Makefile.am: Update for removed files.

    * e-msg-composer-hdrs.c: Remove e-msg-composer-address-entry.h
    include.

    * e-msg-composer.c: Remove e-msg-composer-address-dialog.h include
    
2000-10-23  Ariel Rios   <ariel@arcavia.com>

    * e-msg-composer-hdrs.c: Include Composer.h
    instead of volution-Addressbook-SelectNames.h

2000-10-22  Dan Winship  <danw@helixcode.com>

    * .cvsignore: No, don't ignore Evolution-Addressbook-SelectNames*.
    They're not supposed to be there any more. 

2000-10-22  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer-attachment-bar.c (attach_cb): Removed.
    (add_from_user): Use `e_msg_composer_select_file()' instead of
    doing the file selector widget magic by yourself.

2000-10-20  Jeffrey Stedfast  <fejj@helixcode.com>

    * .cvsignore: Ignore Evolution-Addressbook-SelectNames*

2000-10-20  Dan Winship  <danw@helixcode.com>

    * Evolution-Composer.idl: Evolution::Composer interface

    * evolution-composer.[ch]: Implementation and factory. So
    entirely not tested.

    * Makefile.am (libcomposer_la_SOURCES): Add
    evolution-composer.[ch]
    (IDLS): Update this for Evolution-Composer.idl / Composer.idl

    * main.c: Removed. (Old, dead code)

2000-10-19  Ettore Perazzoli  <ettore@helixcode.com>

    * Makefile.am (glade_data): Add `e-msg-composer-attachment.glade'.
    (glade_messages): New.
    (EXTRA_DIST): Add `$(glade_messages)'.

2000-10-19  Michael Meeks  <michael@helixcode.com>

    * e-msg-composer.c (create_menubar_file, create_menubar_edit),
    (create_menubar_format, create_menubar_view, create_menubar): kill.
    (create_toolbar): die.
    (setup_ui): impl.
    (e_msg_composer_construct): hook in.
    (menu_format_html_cb): update.
    (menu_view_attachments_activate_cb): ditto.
    (destroy): upd.
    (e_msg_composer_construct): upd.
    (e_msg_composer_set_send_html): upd.

2000-10-16  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-hdrs.c (init): Don't need the ID anymore.

2000-10-17  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): If the body
    text was NULL, then don't bother turning it into HTML (besides, it
    causes a nasty segfault).

2000-10-15  Dan Winship  <danw@helixcode.com>

    * Makefile.am: Move CPPFLAGS flags to INCLUDES to avoid bashing
    any CPPFLAGS set at configure time.

2000-10-14  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-attachment.c (set_entry): If the entry widget is
    NULL, obviously we can't set any text on it.

2000-10-14  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-hdrs.c (init): Create a unique-ish id for this set
    of headers, so that only one select-names dialog will be created for
    a given set of headers.
    (address_button_clicked_cb): Pass the unique-ish id to the activate
    dialog command.

2000-10-13  Larry Ewing  <lewing@helixcode.com>

    * e-msg-composer.c (build_message): stop using format_text,
    gtkhtml handles this now.
    (format_text): function removed.

2000-10-10  Iain Holmes  <iain@helixcode.com>

    * e-icon-list.c: Allow NULL pixbufs, and load the "broken" image

    * e-msg-composer-attachment-bar.c (update): If the image isn't 
    found load the default text/plain icon.

2000-10-02  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (build_message): If the body of the message has
    8-bit chars, set the Content-Transfer-Encoding type to the best
    encoding.

2000-10-02  Dan Winship  <danw@helixcode.com>

    * e-icon-list.c: fix #include of gnome-canvas-pixbuf.h

2000-10-02  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-attachment-bar.c: If the description of an attachment
    is a blank string, revert to displaying the filename.

2000-10-01  Iain Holmes  <iain@helixcode.com>

    * e-icon-list.c: If you try to add an icon from a file that doesn't
    exist put a "Broken icon" image.

    * bad-icon.xpm: Broken icon image.

2000-10-01  Iain Holmes  <iain@helixcode.com>

    * e-msg-composer-attachment-bar.[ch] (update): If the attachment is
    an image, then make a thumbnail for it.
    Base the attachment bar on e-icon-list instead of gnome-icon-list.

    * e-icon-list.[ch]: New files. These are modified versions of 
    gnome-icon-list from gnome-libs HEAD that uses gdk-pixbuf instead
    of the evil Imlib.

    * e-msg-composer-attachment.[ch]: Add a pixbuf_cache member, to
    save us having to generate a thumbnail for the attachment every
    time the bar changes.
    
    * e-msg-composer.c (e_msg_composer_construct): Add dnd support for
    files. Drag a file to the composer to add it as an attachment.

2000-09-28  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (build_message): Check to see if the body has
    8bit chars, if so - set the Content-Transfer-Encoding to 8bit.
    Addresses Bugzilla bug #652.

2000-09-25  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-hdrs.c (setup_headers): fix typo in tooltip.
    * e-msg-composer.c (create_menubar_file): fix accelerator for
    "Save as" to be different from "Save". (Both problems pointed out
    by menthos@menthos.com.)

2000-09-24  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (get_signature): Updated to handle FIFO
    streams.

2000-09-19  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (e_msg_composer_construct): Don't g_error out
    if the html-editor-control fails.
    (create_composer): New internal function to create and construct a
    msg_composer and pop up an error message if it fails.
    (e_msg_composer_new, e_msg_composer_new_with_sig_file,
    e_msg_composer_new_with_message, e_msg_composer_new_from_url): Use
    create_composer, return if it fails, change return type to
    EMsgComposer *.

2000-09-18  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-attachment.c (get_mime_type): Use
    gnome_vfs_get_file_info.

    * e-msg-composer-attachment-bar.c (update): Use gnome_vfs_mime
    functions, not old gnome_mime.

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

    * Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
    $(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

    * e-msg-composer-address-dialog.c, e-msg-composer-address-entry.c,
    e-msg-composer-attachment.c, e-msg-composer-hdrs.c,
    e-msg-composer.c: Fixed the #include lines to deal properly with
    gal.

2000-09-12  Michael Meeks  <michael@helixcode.com>

    * e-msg-composer.c: Update for new UI handler.

2000-09-12  Larry Ewing  <lewing@helixcode.com>

    * e-msg-composer-attachment-bar.c (add_common): add a make sure
    the attachment isn't NULL.  A more complete fix coming soon.

2000-09-12  Ettore Perazzoli  <ettore@helixcode.com>

    * Makefile.am ($(IDL_GENERATED)): Add space after `-I'.

2000-09-05  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c (create_menubar_format): Accelerate the
    `Format' menu with an `o' instead of an `f' [the `f' is already
    taken by the "File" menu].

2000-09-04  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_sig_file): Applied
    Jesse's patch that sets the composer's sig_file

2000-09-02  Lauris Kaplinski  <lauris@helixcode.com>

    * e-msg-composer-address-dialog.c: Use e_utf8 wrappers

2000-09-01  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_get_sig_file): This needs to
    return a const char * and not a char *, because we're not actually
    allocating memory here.
    (create_menubar_file): Changed "Send" to "Send Now" and added
    "Send Later"
    (menu_file_send_later_cb): New callback that emits the POSTPONE
    signal (equivalent to "Send Later"

2000-08-28  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Always
    request to import the HTML version if at all possible so that we
    maintain formatting and other nifty stuff :-)

2000-08-28  Jeffrey Stedfast  <fejj@helixcode.com>
    
    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_to_message): Set the
    "From" address in the CamelMimeMessage. Also updated to use
    get_subject to both make our lives easier and prepare for using UTF8
    (e_msg_composer_hdrs_get_subject): Updated to behave similarly to
    get_from and return allocated memory (it will have to return
    allocated memory once it's converted to use UTF8 anyways)

    * e-msg-composer.c (setup_save_draft): Always set
    composer->send_html = TRUE so that formatting is preserved.

2000-08-24  Lauris Kaplinski  <lauris@helixcode.com>

    * e-msg-composer-address-entry.c: Use e_utf8 wrappers

    * e-msg-composer-attachment.c: Use e_utf8 wrappers

    * e-msg-composer-hdrs.c: Use e_utf8 wrappers
    
2000-08-24  Peter Williams  <peterw@helixcode.com>

    * Makefile.am (INCLUDES): Add builddir/shell so we can
    get Evolution.h

2000-08-12  Michael Meeks  <michael@helixcode.com>

    * e-msg-composer.c (get_text): get_text not get_txt.

2000-08-11  JP Rosevear  <jpr@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Use
    new config accessors

2000-08-10  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c: Remove unneeded e-setup.h include

2000-08-10  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (exit_dialog_cb): Made async

2000-08-10  Peter Williams  <peterw@helixcode.com>

    * e-msg-composer.c (do_exit): Temporarily disable draft saving
    while we figure out how to work around Zucchi's new append_message.

2000-08-10  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_get_from): Return the
    text in GtkCombo->entry

2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (create_dropdown_entry): Fixed the GList
    identity stuff, should now display all configured identities.

2000-08-09  Christopher James Lahey  <clahey@helixcode.com>

    * e-msg-composer-address-dialog.c: Fixed some warnings.

    * e-msg-composer-hdrs.c: Switched the composer to use an EEntry
    for the subject field.

    * e-msg-composer.c: Changed the non scaling objects in this vbox
    to be FALSE, FALSE instead of FALSE, TRUE.

2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-hdrs.c (add_header): Modified to allow dropdown
    entry-boxes as well (for headers like From:)
    (setup_headers): Modified to use the correct enum type.
    (create_dropdown_entry): New convenience function to add a
    drop-down combo box and fill it in with identities
    (init): Set from_entry to NULL
    (e_msg_composer_hdrs_get_from): New convenience function to get
    the text in the From widget in the composer
    (e_msg_composer_hdrs_set_from): New convenience function to set
    the From header in the composer

2000-08-08  JP Rosevear  <jpr@helixcode.com>

    * Makefile.am: Fix build by allowing includes for e-table dir

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart):
    s/strcasecmp/g_strcasecmp

    * e-msg-composer.c: s/strncasecmp/g_strncasecmp - this will help
    later with building on different platforms :-)

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_message): Added code
    to set the body text based on the CamelMimeMessage.
    (set_editor_text): Use lowercase html tags...

2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c (do_exit): Prompt the user to save their
    composition in Drafts.
    (set_editor_text): Uhm, use "-- \n" not "--\n" because the space
    is called for in the standard
    (e_msg_composer_new_with_message): New convenience function that
    takes a CamelMimeMessage as an argument. This will be useful when
    we code the ability to resume the editing of a message draft (like
    in the Drafts folder).

2000-08-01  JP Rosevear  <jpr@helixcode.com>

    * e-msg-composer.h: Constify param

    * e-msg-composer.c (get_signature): Constify param
    (set_editor_text): ditto
    (e_msg_composer_new_with_sig_file): ditto

2000-08-01  Peter Williams  <peterw@helixcode.com>

    * e-msg-composer.c (set_editor_text): sizeof("--\") !=
    strlen("--\n"), breaking the test for the signature prefix.

2000-07-28  JP Rosevear  <jpr@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_with_sig_file): New
    function to create composer with sig file set.
    (e_msg_composer_get_sig_file): New function to get sig file
    (e_msg_composer_set_sig_file): New function to set sig file

2000-07-25  Michael Meeks  <michael@helixcode.com>

    * e-msg-composer.c (get_text): add textual exception printout.
    (set_editor_text): close pre tags & check for pre-existing
    sig separator.

2000-07-25  Peter Williams  <peterw@helixcode.com>

    * e-msg-composer.c (menu_file_insert_file_cb): Mark this function
    as FIXME because we're waiting for the HTML Editor Control to
    support paste commands. Also some updates for when that happens.

2000-07-24  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c: Remove GOAD support.
    (create_editor): Try to give a more helpful error message when
    failing to load the editor control.

2000-07-23  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c (menu_format_html_cb): New callback for the
    "Send HTML" menu toggle item.
    (create_menubar_format): New.
    (create_menubar): Call it.
    (create_menubar_options): Removed.
    (init): Initialize `send_html' and `attachment_bar_visible' to
    FALSE.
    (get_signature): Add `void' to the declaration.  This is C, not
    C++.
    (menu_file_close_cb): Renamed from `exit_cb'.
    (menu_file_send_cb): Renamed from `send_cb'.
    (menu_file_save_as_cb): Renamed from `save_as_cb'.
    (menu_file_save_cb): Renamed from `save_cb'.
    (menu_file_open_cb): Renamed from `open_cb'.
    (menu_file_add_attachment_cb): Renamed from `add_attachment_cb'.
    (menu_file_insert_file_cb): Renamed from `insert_file_cb'.
    (e_msg_composer_set_send_html): New.
    (build_message): Use the `send_html' flag instead of peeking the
    `msg_format' gnome-config value directly.

    * e-msg-composer.h: New member `send_html' in `EMsgComposer'.

2000-07-23  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c: Changed to use BonoboUIHandler stuff directly
    instead of translating from GnomeUIInfo.
    (create_menubar_file): New.
    (create_menubar_edit): New.
    (create_menubar_view): New.
    (create_menubar_options): New.
    (create_menubar): Use these functions to set up the menu bar.
    (create_toolbar): Use BonoboUIHandler directly instead of
    converting from GnomeUIInfo.
    (toolbar_view_attachments_clicked_cb): Removed.
    (address_dialog_cb): Removed.
    (address_dialog_destroy_cb): Removed.
    (address_dialog_apply_cb): Removed.
    (setup_address_dialog): Removed.

2000-07-12  Peter Williams  <peterw@helixcode.com>

    * e-msg-composer.c: (view_tree) Make the "View Attachments" item
    a toggleitem ... so that it can be toggled...
    (menu_view_attachments_activate_cb): Treat the widget correctly
    and toggle correctly.

2000-07-10  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c (exit_cb): Use it.
    (delete_event): New, handler for the "delete_event" signal.

2000-07-09  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (set_editor_text): Don't load "" into the
    editor, because it will cause the editor component to g_warning.

2000-07-09  Christopher James Lahey  <clahey@helixcode.com>

    * e-msg-composer-hdrs.c: Removed the extra frame here.

2000-07-08  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (create_menubar): Create an empty "Edit" menu
    for the editor control to insert itself into.

2000-07-08  Jeffrey Stedfast  <fejj@helixcode.com>

    * .cvsignore: Ignore dynamically created source files

2000-07-08  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer-hdrs.c (set_entry): New.
    (e_msg_composer_hdrs_set_to): Use it.
    (e_msg_composer_hdrs_set_cc): Likewise
    (e_msg_composer_hdrs_set_bcc): Likewise.
    (e_msg_composer_hdrs_get_to): Replace implementation with a
    `g_assert_not_reached()'.
    (e_msg_composer_hdrs_get_cc): Likewise.
    (e_msg_composer_hdrs_get_bcc): Likewise.

    * e-msg-composer.c: Get rid of cut/copy/paste/undo as they
    duplicate the editor toolbar and cannot be made to work for all
    the widgets anyway.

2000-07-08  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer-hdrs.c: New member `corba_select_names' in
    `EMsgComposerHdrsPrivate'.
    (destroy): If not `CORBA_OBJECT_NIL', release.
    (init): Init to `CORBA_OBJECT_NIL'.
    (setup_corba): New.
    (e_msg_composer_hdrs_new): Call it.
    (add_entry): Create the entries by using the ::SelectNames
    interface.
    (address_button_clicked_cb): Activate the dialog through the
    ::SelectNames interface.

2000-06-29  Jeffrey Stedfast  <fejj@helixcode.com>

    * e-msg-composer.c: Changed "Exit" to "Close" in the File menu.
    This is a little more intuitive as it does not suggest exiting
    the application, just says "close this window".

2000-06-26  Christopher James Lahey  <clahey@helixcode.com>

    * Makefile.am: Added e-msg-composer-select-file.h for make
    distcheck.

2000-06-26  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c
    (load): New.
    (open_cb): Use it.
    (save): New function.
    (save_cb): Implemented by using it.
    (save_as_cb): Likewise.

2000-06-17  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c (e_msg_composer_construct): I18N the title bar.

    * Makefile.am (libcomposerinclude_HEADERS): Removed.  Move all the
    `.h' files into `libcomposer_la_SOURCES' so that they get
    distributed, but not installed.

    * e-msg-composer.c (open_cb): New; implement the `Open' command.
    (save_as_cb): New; implement the `Save as' command.
    (init): Initialize the `persist_file_interface' and
    `persist_stream_interface' members to NULL.
    (destroy): Release the PersistStream and PersistFile interfaces.
    (e_msg_composer_construct): Query the PersistFile and
    PersistStream interfaces on the control and save them in the
    `persist_file_interface' and `persist_stream_interface' members.
    (get_text): Renamed from `get_editor_text'.  Get a
    @persist_stream_interface instead of querying it a the control.
    (build_message): Return NULL if `persist_stream_interface' is nil.

    * e-msg-composer.h: New member `persist_file_interface' in
    `EMsgComposer'.

    * e-msg-composer-select-file.c: New.
    * e-msg-composer-select-file.h: New.

    * e-msg-composer.c (e_msg_composer_construct): Make the `To:'
    entry grab the keyboard focus.

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_get_to_entry): New.
    (e_msg_composer_hdrs_get_cc_entry): New.
    (e_msg_composer_hdrs_get_bcc_entry): New.
    (e_msg_composer_hdrs_get_subject_entry): New.

    * e-msg-composer.c (e_msg_composer_construct): Set the scroll
    frame's shadow type to `GTK_SHADOW_IN'.
    (format_text): Initialize `tabbing' to zero to shut down the
    compiler.

2000-06-14  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-attachment-bar.c (add_from_user): keep the
    GtkFileSelection around between calls so we start up in the same
    directory we ended up in last time around. (Also fixes a big
    memory leak in that the code was already keeping the
    GtkFileSelection around, it just wasn't remembering to reuse it.)

    * e-msg-composer.c (format_text): Don't line-wrap lines that start
    with ">".

2000-06-12  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (format_text): If a paragraph starts with TABs,
    indent the whole paragraph to that tab level.

2000-06-12  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c: Make the `attachment_scroll_frame' an
    `EScrollFrame'.
    (exit_cb): I18N the quit message.

    * e-msg-composer.h: `attachment_scrolled_window' renamed to
    `attachment_scroll_frame'.

2000-06-12  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (format_text): Don't break on non-breaking
    spaces, don't keep non-breaking spaces that fall after a line
    wrap, and translate non-breaking spaces to regular ones after
    wrapping.

2000-06-05  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (e_msg_composer_attach): New convenience
    function.

    * e-msg-composer-attachment.c: Store a CamelMimePart rather than
    filename/description/mime_type info. Also record whether we were
    told or guessed the MIME type.
    (e_msg_composer_attachment_new_from_mime_part): New constructor.
    (e_msg_composer_attachment_edit): Remove the "browse" button. (If
    the user wants to change the actual file that the attachment is
    based on, he should delete the attachment and create a new one...)
    Remove the "Apply" button, because it's not all that useful. Make
    the MIME type only track the filename if it was guessed rather
    than being provided.

    * e-msg-composer-attachment.glade: Remove "browse" and "apply"
    buttons. Make filename editable.

    * e-msg-composer-attachment-bar.c (sort): Removed. Send the
    attachments in the order the user attached them in.
    (text_changed): Removed, since we weren't enabling the relevant
    GnomeIconList functionality that would have used this.
    (update): Don't print the size if it's 0.
    (attach_to_multipart, etc): adjust for EMsgComposerAttachment
    changes.
    (attach_to_multipart): Use 7bit encoding for message/ subparts.
    (e_msg_composer_attachment_bar_attach_mime_part): New convenience
    function.
    

2000-06-02  Christopher James Lahey  <clahey@helixcode.com>

    * e-msg-composer.c: Added the ability to save plain text mail.

2000-05-29  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (get_editor_text): add a "format" argument so
    we can fetch different kinds of text.
    (format_text): New function to do line wrapping on plain text.
    (build_message): Build multipart/alternative messages rather than
    HTML-only ones. Yay. We don't suck (as much) any more!

2000-05-28  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c: #include <errno.h>

2000-05-26  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (get_editor_text, set_editor_text): Update for
    PersistStream changes
    (build_message): Update for CamelMultipart changes.

    * e-msg-composer.c (get_signature): routine to read the user's
    signature file.
    (set_editor_text): If the user has configured a signature, append
    it to the set text.
    (e_msg_composer_new): Call set_editor_text with "" to load the
    signature (if any).
    
2000-05-25  Not Zed  <NotZed@HelixCode.com>

    * e-msg-composer.c (build_message): Use camel_data_wrapper_new
    instead of camel_simple_data_wrapper_new.

2000-05-17  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (build_message): Use
    camel_simple_data_wrapper_new rather than camel_data_wrapper_new.

2000-05-13  Valek Filippov  <frob@df.ru>

    * e-msg-composer-attachment.glade: save translatable strings
    * e-msg-composer-attachment.glade.h: file with strings
    * e-msg-composer-address-dialog.glade: save translatable strings
    * e-msg-composer-address-dialog.glade.h: file with strings

2000-05-12  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (get_editor_text): NUL-terminate the data
    extracted from the BonoboStream.

2000-05-10  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart): deal with
    Content-Transfer-Encoding a little bit at least.

2000-05-07  Mathieu Lacage <mathieu@gnu.org>

    * e-msg-composer.c (create_editor): remove FIXME and hardcoded 
    string. You can write mails with OAF now.
    
2000-05-07  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (build_message): unref content, etc. after
    attaching it to message.

    * e-msg-composer-attachment-bar.c (attach_to_multipart): unref
    part after attaching it.

2000-05-06  Christopher James Lahey  <clahey@helixcode.com>

    * e-msg-composer-hdrs.c: Turned off focus in the To, Cc, and Bcc
    buttons.

2000-05-02  Matt Loper  <matt@helixcode.com>

    * Makefile.am: set G_LOG_DOMAIN.

2000-04-28  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-hdrs.c (set_recipients): Update (minimally) for
    Camel recipient changes.

2000-04-27  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new_from_url): New routine, to
    process mailto URLs.

2000-04-26  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (build_message): Only generate a multipart
    message if there are attachments. Otherwise generate a single
    part.

    * Update for CamelMimeBodyPart -> CamelMimePart

2000-04-26  Dan Winship  <danw@helixcode.com>

    * e-msg-composer-attachment-bar.c (attach_to_multipart): add a
    s/SIMPLE_// that notzed missed. Update to use
    camel_mime_part_set_content.
    * e-msg-composer.c (build_message): remove a now-unused variable.
    Update for camel_mime_part_set_content.

2000-04-26  NotZed  <NotZed@HelixCode.com>

    * e-msg-composer.c (build_message): Use camel_mime_part_set_text()
    to set the text rather than messing with data wrappers.

    * e-msg-composer-attachment-bar.c (attach_to_multipart): Change
    for new camel-stream interfaces.
    (attach_to_multipart): Also set base64 encoding by default.

2000-04-25  Radek Doulik  <rodo@helixcode.com>

    * e-msg-composer.c (create_editor): use uih here
    (e_msg_composer_construct): create menubar/toolbar before creating
    editor control

2000-04-23  Dan Winship  <danw@helixcode.com>

    * Makefile.am: build libcomposer static and don't install it.

    * e-msg-composer-attachment-bar.c (attach_to_multipart): This was
    only half-implemented. Finish it, mostly.

2000-04-22  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (e_msg_composer_add_header): new function to
    make the composer record additional headers it should output.
    (In-Reply-To), etc.
    (build_message): output them

2000-04-21  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (e_msg_composer_set_headers): 
    (e_msg_composer_set_body_text): new functions
    (exit_cb): Connect "Exit" menu item finally.

    * e-msg-composer-hdrs.c: const poisoning
    (e_msg_composer_hdrs_set_subject): 
    (e_msg_composer_hdrs_get_subject): new functions

    * e-msg-composer-address-entry.c: const poisoning

2000-04-20  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (get_editor_text, set_editor_text): new
    functions to get and set the contents of the HTML editor via
    Bonobo::PersistStream.
    (build_message): use get_editor_text. This works again.

2000-04-17  Dan Winship  <danw@helixcode.com>

    * e-msg-composer.c (build_message): Change
    camel_mime_message_new_with_session to camel_mime_message_new

2000-03-17  bertrand  <bertrand@helixcode.com>

    * e-msg-composer.c (create_menubar): Pass the composer as the data
    for the menubar callbacks.

2000-03-12  Matt Loper  <matt@helixcode.com>

    * Makefile.am: Modified to make the composer into a library, to be
    used by the mail component.

2000-03-07  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c (create_toolbar): Pass the composer as the data
    for the toolbar callbacks.
    (e_msg_composer_construct): Connect the "changed" signal of the
    attachment bar to `attachment_bar_changed()'.
    (attachment_bar_changed): Renamed to `attachment_bar_changed_cb'.

2000-03-02  Ettore Perazzoli  <ettore@helixcode.com>

    * e-msg-composer.c (e_msg_composer_new): Precondition:
    gtk_main_level() greater than zero.
    (e_msg_composer_construct): Likewise.
    (create_menus): New function.  Set up menus through
    BonoboUIHandler.
    (e_msg_composer_construct): Use it.

    * main.c (main): Initialize Bonobo.

    * e-msg-composer.c (init): Initialize `uih' and `editor' to NULL.
    Do not init `text' and `text_scrolled_window' anymore.
    (destroy): Unref `uih'.
    (e_msg_composer_construct): Create a new BonoboUIHandler and put
    it into `uih'.
    (create_editor): New helper function.
    (e_msg_composer_construct): Use it to set up the editor.

    * e-msg-composer.h: New member `uih' in `EMsgComposer'.  Removed
    members `text', `text_scrolled_window'.  New member `editor'.

    * Makefile.am (INCLUDES): Add `$(BONOBO_GNOME_CFLAGS)'.
    (evolution_msg_composer_LDADD): Add `$(BONOBO_GNOME_LIBS)'.

    * e-msg-composer.c (glade_connect): Removed.
    (setup_signals): Removed.
    (e_msg_composer_construct): Do not use libglade to set the toolbar
    and menubar up.
    (destroy): Removed libglade stuff.
    (init): Likewise.

    * e-msg-composer.h: Removed `menubar_gui', `toolbar_gui',
    `appbar_gui'.

    * e-msg-composer.glade: Removed.

2000-01-12  bertrand  <bertrand@helixcode.com>

    * Makefile.am (evolution_msg_composer_LDADD): 
    use $(EXTRA_GNOME_LIBS_THREADS) to link with gthread

1999-11-17  Ettore Perazzoli  <ettore@gnu.org>

    * Makefile.am: New Makefile to compile the message composer
    executable.

    * main.c: New file.

    * e-msg-composer-hdrs.c (e_msg_composer_hdrs_to_message): Use
    `CAMEL_RECIPIENT*' macros instead of the old `RECIPIENT*' ones
    that do not exist anymore.

    * e-msg-composer-address-dialog.c
    (e_msg_composer_address_dialog_construct): Use `E_GLADEDIR'
    instead of `E_GUIDIR'.
    * e-msg-composer-attachment.c (e_msg_composer_attachment_edit):
    Likewise.
    * e-msg-composer.c (e_msg_composer_construct): Likewise.

(See `$(top_srcdir)/widgets/ChangeLog' for previous changes to the
message composer.)