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

	* em-folder-browser.c (emfb_search_search_activated): No-op if
	emfv->folder is NULL (this means we are looking at a store folder?
	or else the folder hasn't loaded yet). Fixes bug #55293.

2004-03-11  Radek Doulik  <rodo@ximian.com>

	* mail-ops.c: remove junk learning thread, it's handled in
	camel-folder.c:folder_changed now

	* em-folder-view.c (emfv_popup_mark_junk): use
	em_folder_view_mark_selected, set junk, junk-learn and seen flags
	(emfv_popup_mark_nojunk): similar, reset junk, set junk-learn flags

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

	* mail-ops.c (mail_send_mail): Removed. No longer in use (hasn't
	been since before 1.2).
	(send_queue_send): Before enetring the main send loop, create a
	temporary uid array containing ONLY the messages we will send
	(ie. not any that have been marked deleted) so that we can more
	accurately report the number of messages total that we are
	sending. Also continue sending even if we encounter an exeption in
	mail_send_message() (unless, of course, it is a
	user-cancel). Merge any exceptions we get into the master
	exception variable and ALWAYS sync/expunge the queue folder.

2004-03-11  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-browser.c (emfb_set_folder): Reverted signal blocking
	stuff. Doesn't work and is unneeded with the proper fix.

	* em-format-html.c (efh_format_header): Fixed a bug where txt
	wasn't being properly initialised in all cases for Date
	headers. Also fixed the x-evolution-mailer code to simply use the
	ehader->value that was passed in.
	(efh_format_headers): Fixed to handle the special
	X-Evolution-Mailer header.

2004-03-11  Not Zed  <NotZed@Ximian.com>

	* em-folder-browser.c (emfb_set_folder): a really gross hack,
	disable all search handlers before setting the search and set hte
	search manually rather than going through the callbacks.  Partial
	fix for #55267, and ugly as it is.
	(emfb_init): save the search signal id's.
	(emfb_set_folder): ugh, properly set the defaults if the settings
	haven't been stored on the folder, and properly move them upstream
	to the bonobo menus.

	* em-folder-tree-model.c (sort_cb): when we sort, handle not
	having the node in the tree.  otherwise we always compare against
	"" which puts it at the head of the branch, rather than the tail.
	See #55428.

	* em-folder-tree.c (tree_drag_motion): make dnd look funny for
	joe.  #55246.

	* mail-component.c: change stores hash to point to a structure, in
	which we maintain the vtrash and vjunk folders for the entirety of
	the session.  memory use be damned i guess.  #55417 and partially
	#55391.	

2004-03-11  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (efh_format_header): pass the raw header in
	instead of name and value.
	(efh_format_headers): if we have specific headers to show, iterate
	over all headers and print out all matching ones, so duplicate
	headers are properly displayed.  Related to #55298.

	* em-folder-selector.c (em_folder_selector_construct): dont set
	this to be modal.  otherwise you can't click on error popups. duh.

2004-03-08  Not Zed  <NotZed@Ximian.com>

	* em-folder-selection-button.c
	(em_folder_selection_button_clicked): don't let the user select
	virtual/vtrash folders or non-selectable folders.

	* mail-component.c (impl_createControls): disable selection of
	non-select rows.

	* em-folder-selector.c (em_folder_selector_create_new): exclude
	folders with noinferiors set.

	* em-folder-tree.c (folder_tree_new): add folder tree arg, hook
	onto the selection funciton for the tree selection.
	(emft_select_func): selection override function.  allow certain
	things to be excluded.
	(em_folder_tree_set_excluded): api to set what is excluded from
	the selectability.
	(emft_tree_row_activated): call emft_select_func check to see if
	this row is excluded before emitting an activated signal.

	* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
	save folder info->flags in the tree store.

	* mail-folder-cache.c (create_folders): use tail recursion.
	(get_folders): tail recurse.

	* (*): Fixed for api changes in camel.

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

	Fix for bug #55298.

	* em-format-html.c (efh_format_header): Now takes a default txt
	argument (header value). For address/date headers, if this isn't
	set, default back to the old behaviour of looking it up.
	(efh_format_headers): If we are iterating thru the camel raw
	headers, always pas the header value as the txt argument,
	otherwise always pass NULL.

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

	* em-format-html-display.c (efhd_xpkcs7mime_validity_clicked):
	Removed an unused variable left over from an old attempted fix.

	* em-folder-selector.c (emfs_response): Select the same folder in
	the create-folder dialog as is selected in the parent selector
	dialog. Fixes the rest of bug #53862.

	Partial fix for bug #53862.

	* em-folder-selector.c (emfs_response): Connect to the newly added
	"folder-added" signal and save a created_uri string so that we can
	be sure to only listen for the creation of the folder the user
	created in *our* create-folder dilog (and not from some other
	place).

	* em-folder-tree-model.c (folder_subscribed): Emit a new
	"folder-added" signal.

	* mail-session.c (request_password): Focus the entry widget. Fixes
	bug #55330.

2004-03-10  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c (pipe_to_sa_with_error): call
	camel_stream_close and close the fds[1]
	(pipe_to_sa_with_error): do not call close, camel_stream_close
	should be enough to be sure the fd was closed

2004-03-08  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (emft_create_folder): New async function to
	create a folder.
	(em_folder_tree_create_folder): Partly moved into
	emft_create_folder. Might be able to remove this code, but lewing
	might be using it in Connector or something? Need to ask him...
	(emft_popup_new_folder_response): Use emft_create_folder()
	instead.

2004-03-08  Radek Doulik  <rodo@ximian.com>

	* mail-ops.c (mail_filter_junk): new method, filter folder with
	FILTER_SOURCE_JUNKTEST type filter

	* em-folder-view.c: added Filter Junk command and junk icons to
	menus, added apply filters icon to popup menu
	(emfv_popup_filter_junk): new helper method, calls
	mail_filter_junk

2004-03-05  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-display.c (em_format_html_display_search): Don't
	set our parent window as the efhd, ehfd isn't even a widget.

	Fixes bug #54030

	* em-format-html-display.c (efhd_search_response): Reset the
	searching tokeniser on Cancel.

	* e-searching-tokenizer.c (e_searching_tokenizer_reset): New
	function to reset a search tokeniser.

2004-03-05  Not Zed  <NotZed@Ximian.com>

	** See bug #55096.

	* importers/evolution-mbox-importer.c (process_item_fn): hack,
	unref when complete

	* importers/evolution-outlook-importer.c (outlook_importer_new):
	init status lock.
	(process_item_fn): hack, unref ourselves when we're complete.  i
	think the shell leaks the ref.

2004-03-04  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (emfv_popup): If event == NULL, don't try to
	use event->key.time

	* em-migrate.c (upgrade_vfolder_sources_1_4): New function to
	upgrade vfolder sources.
	(em_upgrade_xml_1_4): If the doc is vfolders.xml, upgrade the
	sources nodes.

2004-03-03  Not Zed  <NotZed@Ximian.com>

	** See bug #53738.

	* mail-ops.c (fetch_mail_fetch): if we've been cancelled, uncancel
	so syncing can work.  and always sync the folder (with expunge if
	deleting).

	** See bug #54924.

	* em-utils.c (em_utils_selection_set_urilist): Try to get the drop
	filename from the message subject, or folder name.
	(em_utils_empty_trash): kill warning.

	** See bug #54121.

	* mail-component.c (impl_requestCreateItem)
	(emc_new_folder_response): Hack in a nastish implementation of
	create folder for the new menu.
	(impl__get_userCreatableItems): add 'new mail folder' to new
	button.

2004-03-03  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
	if we have the folder opened already, and its the outbox, then use
	the total count instead of unread count.  Bit of hack, but copies
	mail-folder-cache stuff.

	* mail-component.c (mc_add_store): renamed from
	mail_component_add_store, internal call.  Added a done callback.
	(mc_add_local_store): renamed from mc_add_store, callback for
	local store.
	(mail_component_add_store): call mc_add_store to do the work.
	(mc_add_local_store_done): ugh, the target of all this shit - note
	all the default folders now they should be setup.

	* mail-folder-cache.c (mail_note_folder): clean up the logic a
	bit.  was gonna do osmething else but it didn't work.
	
2004-03-02  Not Zed  <NotZed@Ximian.com>

	* mail-send-recv.c (mail_send): if we're already sending, up the
	again count to tell it we need to re-send again.
	(receive_done): if we've been asked to run a send again while we
	were already running it, run it again to make sure we didn't miss
	any new messages.  See bug #46839.

	* em-mailer-prefs.c (em_mailer_prefs_construct): update
	check_incoming_imap changes for merge conflicts.
	(settings_changed): i have no idea what these changes jeff did do,
	but check_incoming_imap is no longer needed, so i've deleted most
	of it.

2004-02-27  Not Zed  <NotZed@Ximian.com>

	* em-format.c (emf_multipart_encrypted, emf_multipart_signed): If
	validation fails, display as multipart/mixed rather than unkown
	attachment type, and make the error a little clearer that its an
	error.  See #52939.

2004-02-26  Not Zed  <NotZed@Ximian.com>

	* message-list.c (regen_list_regened): NOOP if the folder has
	changed.

	* mail-session.c (mail_session_check_junk_notify): remove
	check_incoming_imap test.
	(mail_session_init): "

	* evolution-mail.schemas.in.in: Remove check_incoming_imap option.

	* mail-config.glade: Remove check incoming imap checkbox.

	* em-mailer-prefs.c (em_mailer_prefs_construct): remove
	check_incoming_imap test.
	(em_mailer_prefs_apply): "
	(settings_changed): "

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

	* em-folder-tree.c (emft_tree_button_press): s/||/&&/. Fixes a
	dumb bug I introduced yesterday.

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

	* em-folder-selector.c (em_folder_selector_construct): Connect to
	the folder-activated signal.
	(folder_activated_cb): Call gtk_dialog_response() with
	GTK_RESPONSE_OK. Fixes bug #54793.

	* em-folder-tree.c (emft_tree_row_activated): New callback to emit
	the "folder-activated" signal which is needed to fix bug #54793.
	(emft_tree_button_press): Handle button1 double-clicks too (also
	for bug #54793).
	(emft_tree_button_press): On right-click, we also want to select
	the folder the user right-clicked on. Fixes bug #54772.

2004-02-27  Jeffrey Stedfast  <fejj@ximian.com>

	* em-mailer-prefs.c (em_mailer_prefs_construct): Fixed some
	console warnings from my last commit.

	* em-folder-view.c (emfv_setting_notify): If
	gconf_entry_get_value() returns NULL, then it means the key was
	unset or something. Don't use g_return_if_fail() for that.

	First of the lockdown fixes...

	* em-composer-prefs.c (em_composer_prefs_construct): Same as
	below.

	* em-mailer-prefs.c (em_mailer_prefs_construct): Respect
	locked-down keys by disabling their sensitivity to the user.
	(settings_changed): Don't re-enable check_incoming_imap if the key
	is locked.

2004-02-26  Rodney Dawes  <dobey@ximian.com>

	* em-format-html-display.c (efhd_attachment_button): Create the
	arrows in these widgets as GTK_SHADOW_NONE, since the default arrow
	type in GTK+ 2.x is flat triangle arrows, and shadow types are
	generally ignored for arrows anyway, and so we don't look ugly with
	themes that handle shadow types on arrows correctly

2004-02-26  Jeffrey Stedfast  <fejj@ximian.com>

	Fix for bug #54352

	* em-message-browser.c (emmb_class_init): Set update_message_style
	to FALSE.

	* em-folder-view.c (emfv_setting_notify): Only update message
	display style if our subclass wants us to.
	(emfv_class_init): Set update_message_style to TRUE.
	(emfv_view_mode): Don't save the gconf key unless our class allows
	us to.

2004-02-26  Jeffrey Stedfast  <fejj@ximian.com>

	* em-utils.c (em_utils_folder_name_from_uri): Make sure url->path
	is non-NULL before setting folder_name to url->path + 1. Could
	possibly fix bug #54853.

2004-02-25  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-display.c (efhd_attachment_button): Protect
	against using NULL pixbufs. Gets rid of a lot of console warning
	spewage on my system.

	* em-folder-view.c (emfv_list_key_press): Removed Delete/KP_Delete
	from here. Now handled via the bonobo-ui menu accels. Fixes bug #53504.

2004-02-25  Radek Doulik  <rodo@ximian.com>

	* mail-session.c (main_get_filter_driver): set seen flag for junk
	messages

	* em-folder-view.c (emfv_popup_mark_junk): do not set DELETED

2004-02-24  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-account-editor.c (construct): Removed Apply button. As
	discussed on IRC, UI doesn't feel we should have an Apply button
	here.

2004-02-24  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-account-editor.c (construct): Need to listen for changes to
	S/MIME options, the signature option menu, and any extra
	provider-specific config options. Fixes bug #54036.

	* em-folder-view.c (emfv_popup_mark_junk): Set the SEEN flag as
	well.
	(emfv_list_key_press): Removed the skip-to-next-message logic as
	this was already being handled in emfv_popup_delete(). Fixes bug
	#54471.
	(emfv_enable_menus): Re-enable MessageDelete here. Fixes bug
	#54770.

	* em-utils.c (em_utils_folder_is_drafts): Use the new
	camel_store_folder_uri_equal() function.
	(em_utils_folder_is_sent): Same.

2004-02-23  Jeffrey Stedfast  <fejj@ximian.com>

	Fix for bug #54057

	* em-utils.c (em_utils_folder_is_sent): Use provider->url_equal()
	rather than camel_store_uri_cmp() since that function did not do
	anything close to what it claimed to do. Also use
	em_uri_to_camel() here on the account sent_folder_uri.
	(em_utils_folder_is_drafts): Same.

2004-02-23  Jeffrey Stedfast  <fejj@ximian.com>

	* em-message-browser.c (emmb_list_message_selected): Protect
	against NULL uids.
	(emmb_set_message): Same.

	* em-format-quote.c (emfq_format_message): Print the headers when
	forwarding inline/quoted. Fixes bug #53916.

	* em-folder-tree.c (tree_drag_motion): We want UID_LISTs to drop
	with the MOVE action by default. Fixes a common complaint from
	IRC.

2004-02-23  Not Zed  <NotZed@Ximian.com>

	* em-format.c (emf_multipart_signed): check mps->protocol != NULL
	before dereferencing it.  See #54406.

2004-02-20  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (emfv_list_key_press): Delete key should always
	delete, never undelete (bug #53215). Also fixes a bug where
	uids->len was being accessed after uids had been free'd.

	Fix for bug #53997

	* em-folder-view.c (emfv_list_message_selected): Ref the emfv
	before spawning the async event.
	(emfv_list_done_message_selected): Check emfv->preview !=
	NULL. Also unref the emfv when done.

2004-02-20  Dan Winship  <danw@ximian.com>

	* mail-component.c (set_prop): Remove the debug message here.

2004-02-20  Not Zed  <NotZed@Ximian.com>

	* mail-vfolder.c (mail_vfolder_add_uri): fix for vfolder-rule api
	changes.

	* mail-folder-cache.c (unset_folder_info, setup_folder)
	(rename_folders): switch the sense of the no select checks.  TEST!

2004-02-19  Chris Toshok  <toshok@ximian.com>

	* em-format.c (emf_application_xpkcs7mime): wrap code with
	ENABLE_SMIME instead of HAVE_NSS.
	(emf_multipart_signed): same.
	(type_builtin_table): same.

2004-02-19  Rodney Dawes  <dobey@ximian.com>

	* em-folder-tree.c (emft_save_state): Revert previous change, doh

2004-02-19  Rodney Dawes  <dobey@ximian.com>

	* em-folder-tree.c (emft_save_state): Don't set the timeout id to 0
	and then immediately return FALSE, which tries to remove the timeout

2004-02-19  Not Zed  <NotZed@Ximian.com>

	* mail-send-recv.c (get_receive_type): 
	* mail-config.c (mail_config_get_account_by_source_url) 
	(mail_config_get_account_by_transport_url): 
	* mail-component.c (mail_component_load_store_by_uri): 
	* mail-account-gui.c (mail_account_gui_setup) 
	(mail_account_gui_save): 
	* em-utils.c (em_utils_empty_trash, em_uri_from_camel): 
	* em-folder-tree-model.c (account_changed):
	* em-folder-selector.c (em_folder_selector_get_selected_uri): fix
	camel provider api changes.

2004-02-18  Jeffrey Stedfast  <fejj@ximian.com>

	* em-composer-prefs.c (sig_fill_list): Changed the name to not
	imply we are working with a GtkCList widget (since we are using a
	GtkTreeView).

	* em-folder-tree.c (emft_tree_button_press): Pass flags to
	em_popup_target_new_folder() instead of just an isstore arg.
	(emft_tree_button_press): Fake the fi flags for vTrash/vJunk so
	that em-popup.c can disable the delete flag for these.

	* em-popup.c (em_popup_target_new_folder): Instead of taking an
	isstore argument, take a flags argument so that our caller can
	give us hints about the selected folder/store. Also fixed a logic
	bug from my previous commit.

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

	* em-folder-tree.c (emft_tree_button_press): Updated for em-popup
	API change (altho currently passes a dummy value).

	* em-popup.c (em_popup_target_new_folder): Check for vTrash/vJunk
	by checking the CAMEL_FOLDER_VIRTUAL info flags bit. (perhaps this
	flag should be renamed to SPECIAL? VIRTUAL might not have been a
	good name). Also changed to check flags & CAMEL_FOLDER_NOSELECT
	rather than checking the uri string for a noselect param.

	* mail-folder-cache.c (unset_folder_info): Instead of checking for
	";noselect" in the uri, check for a CAMEL_FOLDER_NOSELECT flag on
	mfi->flags.
	(setup_folder): Copy the fi->flags to mfi->flags here.
	(rename_folders): Same.
	(setup_folder): Check fi->flags for CAMEL_FOLDER_NOSELECT here
	instead.
	(rename_folders): Same. Also gets rid of a FIXME.

2004-02-18  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-display.c (efhd_xpkcs7mime_validity_clicked):
	Revert change from yesterday.
	(efhd_xpkcs7mime_button): Use the icon from the table.

2004-02-18  Not Zed  <NotZed@Ximian.com>

	** See bug #54492.
	
	* em-folder-tree.c (emft_popup_copy_folder_selected): check the
	store flags, not the fragment presence to find out if we use the
	fragment as the path.

2004-02-17  Jeffrey Stedfast  <fejj@ximian.com>

	Fix for bug #54060 (except for the "don't let users copy/move
	messages to Outbox" bit).

	* em-folder-tree.c (emft_drop_target): Rearranged a little. We can
	check for special dest folders right away. Also added a check for
	the default local folders (Drafts/Inbox/Outbox/Sent) since we
	don't want to be able to move them anywhere else (copying is ok).
	(emft_popup_copy_folder_selected): Don't allow moving any of the
	default local folders to be consistant with drag&drop changes.
	(emft_popup_rename_folder): Don't allow the user to rename a
	default local folder.
	(emft_popup_delete_folder): Don't allow deletion of special local
	folders.

	* mail-component.c (mail_component_peek_local_store): New function
	to peek the local store.

2004-02-17  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-display.c (efhd_xpkcs7mime_validity_clicked):
	Display an alternate description based on the trust value if we
	have a trust to work with.

	* em-folder-browser.c (emfb_hide_deleted): Set the hide_deleted
	bool on EMFolderView.

	* em-folder-view.c (emfv_popup_delete): Fix Sarfraaz Ahmed's fix
	to only jump to the previous message if hide_deleted is
	set. Otherwise his fix gets extremely irritating.
	(emfv_list_key_press): Same.

2004-02-17  Not Zed  <NotZed@Ximian.com>

	** See bug #53914.

	* em-utils.c (guess_account): do some extra checks, message
	source, and source folder.
	(guess_account_folder): helper to guess account based on folder.

	** See bug #54200.

	* em-popup.c (em_popup_target_new_select): add
	EM_POPUP_SELECT_FOLDER - to find out if we have a folder at
	all.  Handle getting a NULL folder passed in.

	* em-folder-view.c (em_folder_view_get_popup_target): Added
	EM_FOLDER_VIEW_SELECT_FOLDER - to detect when we dont have a
	folder set on the emfolderview.

	* em-folder-browser.c (emfb_mark_all_read): if we don't have a
	folder, dont try and run.
	(emfb_enable_map[]): Disable a bunch of stuff we have no
	folder set.

	* importers/pine-importer.c (import_contact): fix for the
	weird-arsed e-contact list api.  and fix a small memleak.

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

	* em-folder-tree.c (emft_drop_folder): Make sure the drop-target
	folder doesn't already contain a folder named identical to the one
	we are dropping by using the new CAMEL_STORE_FOLDER_EXCL
	flag. Fixes bug #53810.

2004-02-13  Radek Doulik  <rodo@ximian.com>

	* evolution-mail.schemas.in.in: added defaults for composer
	width/height

2004-02-13  Sarfraaz Ahmed <asarfraaz@novell.com>

	* em-folder-view.c (emfv_popup_delete): added the code to get
	the previous mail in a list, if get_next_mail fails. This is a
	fix for #54195
	(emfv_list_key_press): Same as above

2004-02-13  Not Zed  <NotZed@Ximian.com>

	* importers/netscape-importer.c: use mail-importer to import the
	mail tree, fix the account stuff to talk directly to mail config.
	Added cancel button.  etc.  This is completely untested apart from
	compiling with no warnings.

	* importers/mail-importer.c (import_mbox_import): dont re-use the
	exception for syncing.

	* importers/evolution-outlook-importer.c: major reworking.  Some
	platform fixes, runs in another thread, simpler/cleaner main loop.
	This is completely untested apart from compiling with no warnings.

	* importers/evolution-mbox-importer.c (support_format_fn): we dont
	want to check the From_ line case insensitive!
	(create_control_fn): implement this weird api.

2004-02-12  Not Zed  <NotZed@Ximian.com>

	* importers/elm-importer.c: rewrote all importing stuff.

	* importers/mail-importer.c (mail_importer_import_folders_sync):
	split out into a recursive function & entry.  Now handles mozilla
	format stuff with a flag.
	(import_mbox_import): made the cameloperation properly
	save/restore multiple registrations.

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

	* em-junk-filter.c (pipe_to_sa_with_error): use
	g_find_program_in_path to avoid fork in case program is not
	available

2004-02-11  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-component.c (mail_control_new): Disable the
	bonobo-ui-component statusbar when using the EMFolderBrowser
	outside of the mail component. This prevents the Connector
	component from having 2 status bars.

	* em-popup.c: #include <libgnomevfs/gnome-vfs-mime.h>
	(em_popup_create_menu): Wrap item->label with _() so
	that the strings get translated properly.

2004-02-11  Christian Neumair  <chris@gnome-de.org>

	* em-folder-tree-model.c (sort_cb): "On this Computer" -> "On This
	Computer".

	* mail-component.c (mc_setup_local_store): Ditto.

2004-02-11  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-print.c: Same.

	* em-junk-filter.c: #include <config.h>

	* em-popup.c: Add license & config.h

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

	* em-junk-filter.c (em_junk_sa_test_spamd): if spamc is not
	available, try /usr/sbin/spamc

2004-02-10  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c (em_junk_sa_test_spamd): try to check if system
	wide spamd has --local parameter set according to our setting
	(em_junk_sa_test_spamd): in case we were unable to start our own
	spamd, try to run it from /usr/sbin before giving up

2004-02-11  Not Zed  <NotZed@Ximian.com>

	* importers/mail-importer.c (mail_importer_import_folders_sync):
	call the right recursive function, oops.

	* importers/mail-importer.h: don't include camel-operation.h, but
	fix up the forward decl usage.

2004-02-11  JP Rosevear <jpr@ximian.com>

	* importers/mail-importer.h: include camel-operation.h

2004-02-11  Not Zed  <NotZed@Ximian.com>

	* importers/pine-importer.c: Basically rewrote this, the import
	tasks run in another thread.  It tells you more about what's going
	on, and its cancellable.
	(pine_store_settings): changed the meaning of the settings
	slightly, if set it means we've processed them already.

	* mail-component-factory.c (factory): hook in importer factory
	callback.

2004-02-10  Not Zed  <NotZed@Ximian.com>

	* importers/*-importer.c: removed module init, just provide a new
	method.  Updates for api changes.

	* Makefile.am: link mail importers in directly.

	* mail-importer.c: changed to do stuff in-memory with linked
	stuff, moved to importers/.

	* importers/GNOME_Evolution_Mail_Importers.server.in.in: merge all
	importer .server info's here, point them all to the mailer
	factory.  Removed the others.

	* importers/Makefile.am: remove Mailer.idl stuff.  Move all
	importers to a single library.

2004-02-09  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree.c (tree_drag_data_delete): merged in code from
	em_folder_tree_model_drag_data_delete.
	(tree_drag_data_get): similar.
	(tree_drag_data_received): similar.
	(drag_text_uri_list): removed, use em_utils_selection_set_urilist
	in tree_drag_data_get instead.
	(em_folder_tree_enable_drag_and_drop): merged in
	em_folder_tree_model_set_drag_drop_types.
	(tree_drag_motion): merge in drop_possible, handle qualifiers, and
	return the right type.
	(em_folder_tree_model_row_drop_target): rename to
	emft_drop_target, and make private.  Beefed up substantially,
	handles illogical drops, dropping on to special folders and
	properly handling vfolder uri's (at least within the same tree
	instance).

	* em-folder-tree-model.c: Moved all of the DND stuff to
	em-folder-tree, where it belongs, made it all static.  Should
	allow for some sharing of code too.

	* em-format-quote.c (emfq_format_message): just print the \n after
	the credits in the same printf, rather than adding an else.  Add a
	<br> too, otherwise it has no effect.

2004-02-06  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html.c (efh_format_headers): Make private (only
	EMFormatHTMLQuote used it and that class is no longer in use).
	(efh_format_message): Updated for above change.

	* em-format-quote.c (emfq_format_message): Always write a \n after
	the credits line.

	* em-subscribe-editor.c (sub_folderinfo_get): Set the NO_VIRTUAL
	flag bit for get_folder_info(). Fixes bug #51887.

2004-02-06  Radek Doulik  <rodo@ximian.com>

	* em-folder-view.c (emfv_popup_mark_nojunk): move to the next
	message after mark not junk as well

	* em-junk-filter.c (em_junk_sa_test_spamd): split into
	spamassassin and spamd tests
	(em_junk_sa_is_available): test spamd only if spamd usage enabled
	(pipe_to_sa_with_error): extended pipe_to_sa, last added parametr
	specifies return value if an error occured
	(em_junk_sa_check_junk): don't use /bin/sh -c when running
	spamassassin, it's not needed and we need to avoid getting 126,127
	exit codes from the shell
	(em_junk_sa_check_junk): pass 0 rv_err to pipe_to_sa_with_error to
	avoid false positives in case someone removes/uninstalls SA while
	evolution runs

2004-02-06  Not Zed  <NotZed@Ximian.com>

	** See bug #53258.

	* em-format-html-display.c (efhd_find_handler): force any bonobo
	handler types to always be inline, even attachments.

	* em-format.c (em_format_is_inline): use handler flags for special
	cases, removing all hard-coded types.

	* em-format.h (EMFormatHandler): add a flags field, so far a flag
	to set default inline viewing of the content.

2004-02-06  Not Zed  <NotZed@Ximian.com>

	* em-folder-properties.c: include string.h to kill warning.

	** See bug #53627.
	
	* em-folder-view.c (emfv_popup_mark_junk): changed to work like
	delete does, jumping to the next message if required, and marking
	things immediately, then queuing up the junk marking job if
	required.

	* mail-ops.c (mail_mark_junk): ugh, this stuff totally can't go
	accessing messagelist from another thread!!!!  Changed so this
	code only does the junk reporting, not setting flags.  UGH!  It
	should be doing this implictly on the folder when you set the
	flags, or at least when you sync the folder!!!  Changed ot use the
	queued thread.

	* message-list.c (find_next_undeleted): changed to find
	next-unhidden, i.e. junk as well as deleted, if we're in
	hide-deleted mode.
	(build_tree): always call find_next_undeleted if we have a cursor.
	(build_flat): same.

2004-02-05  Rodney Dawes  <dobey@ximian.com>

	* em-message-browser.c (emmb_list_message_selected): Grab focus on
	the HTML widget when we display

	Fixes #52942

2004-02-05  Jeffrey Stedfast  <fejj@ximian.com>

	* em-message-browser.c (emmb_list_message_selected): Set the new
	title.
	(em_message_browser_window_new): Connect to the message_selected
	signal in the message-list widget. Fixes bug #52232.

	* em-folder-tree-model.c (em_folder_tree_model_row_drop_target):
	Now takes a GdkContext arg... will need this later when we want to
	re-enable dnd of vfolders.

	* em-folder-browser.c (emfb_set_folder): Always set the
	search_state, even if it is NULL (NULL means default/unset state).

	* em-folder-view.c (emfv_mail_next_flagged): Pass TRUE as
	wraparound (to both be consistant with prev_flagged and to fix bug
	#48681.

2004-02-05  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree.c (emft_copy_folders__copy): sync the from folder
	if we're going to delete it, otherwise we can't because its not
	empty.  See #53815.

2004-02-05  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree-model.c
	(em_folder_tree_model_drag_data_received): hmm, another well
	tested bit of code ... if you launch another thread you gotta copy
	the selection since it wont hang around until we're done with it.
	So copy/parse the selection data into appropriate structures.
	(drop_folder): just take the async message as an argument, rather
	than copying half of it to the stack.
	(drop_text_uri_list, drop_uid_list): replace most args with the
	thread message.
	(drop_message_rfc822): removed, now trivial.
	(emftm_drag_data_received_async__drop): change for changed args,
	and fix a memleak.
	(emftm_drag_data_received_async__free): fixed for changed
	structure.

	* em-folder-tree.c (em_folder_tree_create_folder): call abort
	before we unref, aid debugging if we hit it.

	* mail-vfolder.c (uri_is_spethal): check for vfolder/vtrash
	folders.  Based on name check and store options.

2004-02-04  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree-model.c (em_folder_tree_model_row_drop_target):
	Don't allow dropping into a vfolder (store). Fixes bug #53757.

2004-02-04  Not Zed  <NotZed@Ximian.com>

	** See bug #53683.

	* mail-ops.c (mail_sync_store): new async op to call
	CamelStore::sync.

	* mail-component.c (impl_requestQuit): implement, check to see if
	we can quit, or have open or unsent messages (and are in online
	mode).
	(impl_quit): implement.  Trigger off a sync of all open stores,
	and return FALSE until its done.
	(impl_upgradeFromVersion): fixed the signature to match the idl,
	killed that warning at last.

	** See bug #53832.

	* em-folder-browser.c (emfb_folder_properties): only show this if
	we have a uri set.  Strictly, the menu item shouldn't be
	activated.

	** See bug #53131.
	
	* em-folder-browser.c (em_folder_browser_show_preview): copy the
	message list's cursor_uid before calling set_message, since it can
	get freed during setting the message.

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

	* em-folder-tree.c (tree_drag_data_received): Modified
	slightly. The model now calls gtk_drag_finish() for us when it is
	done.

	* em-folder-tree-model.c
	(em_folder_tree_model_drag_data_received): Make this perform camel
	operations in another thread so we don't block.
	(em_folder_tree_model_drag_data_get): Updated args to be
	consistant with drag_data_received.

2004-02-03  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c: handle the sa prefs here, have own gconf
	client with sa dir added

	* mail-session.c: removed sa prefs

2004-02-02  Jeffrey Stedfast  <fejj@ximian.com>

	Fix for bug #52941

	* em-message-browser.c (em_message_browser_window_new): Set window
	size based on previous size; load from gconf if necessary.
	(window_size_allocate): Save window size changes.

2004-02-02  Not Zed  <NotZed@Ximian.com>

	** See bug #53549.

	* em-folder-selector.c: Fix handling a parent path of "/".

	* mail-ops.c (mark_junk_mark): removed the really innacurate cut and
	paste comment.  This has nothing to do with filter_folder.

	** See bug #52994.

	* em-folder-properties.c (em_folder_properties_show): redirect
	vFolder uri's to the vFolder editor.

	** See bug #53502.

	* em-folder-browser.c (emfb_folder_properties): implement.

	* em-folder-tree.c (emft_popup_properties): fixed for change
	below.

	* em-folder-properties.[ch]: Moved the folder properties window
	from em-folder-tree.c to its own file.

2004-02-02  Not Zed  <NotZed@Ximian.com>

	** See bug #53559.

	* em-folder-tree.c (folder_tree_new): set CAN_FOCUS flag on the
	folder tree content widget.

	* em-folder-selector.c (em_folder_selector_construct): Don't wrap
	the folder tree in a scrolled window.  Its already in one ????.
	(em_folder_selector_construct): dont set can_focus on the folder
	tree.

2004-02-01  Bill Zhu <bill.zhu@sun.com>

        Fixes for bug #53530

        * em-utils.c (em_utils_redirect_message): Removed the duplicate 
	adding of attachments

2004-01-30  Jeffrey Stedfast  <fejj@ximian.com>

	Fixes for bug #53348

	* mail-account-gui.c (mail_account_gui_save): Only add the new
	store to the mail-component if the mail-component doesn't already
	know about it (ie. only if we are adding a new account).

	* em-folder-tree-model.c (em_folder_tree_model_add_store): Hash
	our store-info based on account here.
	(em_folder_tree_model_init): Listen for
	account_changed/account_removed signals.
	(em_folder_tree_model_finalize): Disconnect above handlers.
	(account_changed): Tear down the account store node and replace it
	with the new store (assuming it belongs in the tree after the
	changes).
	(account_removed): Remove the account store from the tree.

2004-01-30  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (emft_tree_row_expanded): Get recursive folder
	listing (needed or folders that have as-of-yet-unloaded-subfolders
	that contain unread mail will not be bolded). Fixes bug #51045.

	Fix for bug #53195.

	* em-folder-browser.c (emfb_set_folder): Restore search_state.
	(emfb_search_search_activated): Save search_state.

2004-01-30  Not Zed  <NotZed@Ximian.com>

	** See bug #53549, partial fix.

	* em-folder-selector.c (emfs_create_name_activate): only emit the
	ok response if the ok button would be active (i.e. entered a valid
	path).

	** See bug #52992.

	* message-list.c (message_list_hide_clear): save the hide state
	after its been cleared, so any popup windows inherit it.
	(message_list_hide_uids): same.

	** See bug #53123.

	* em-folder-tree-model.c (drop_folder): changed to take store and
	dest folder as arg, to handle the case of the parent folder being
	"" properly.
	(em_folder_tree_model_drag_data_received): special case dropping a
	folder, and don't allow dropping to "" for any other types.

2004-01-30  Not Zed  <NotZed@Ximian.com>

	** See bug #53558 (plus other fixes/cleanups)

	* em-format.c (emf_format_secure): default implementation, handle
	output of inner part, but dont output any sign/encrypt info.
	(emf_multipart_signed, emf_multipart_encrypted): replaced with
	implementations from em-format-html.c, which now call
	em_format_format_secure to output guts.
	(emf_class_init): hook-up virtual method format_secure.

	* em-format.[ch]: add a virtual method for outputing secured
	parts.  Moved all validity stuff from em-format-html.[ch] to here.

	* mail-component.c (impl_createControls): set the session
	interactive too.

	* em-format-html-display.c: make smime stuff dependent on
	HAVE_NSS.
	(efhd_multipart_signed, efhd_application_xpkcs7mime): removed, now
	handled by root class.
	(efhd_output_secure): renamed to efhd_format_secure, and use
	EMFormat::format_secure to kick off.
	(efhd_class_init): setup format_secure virtual method.

	* em-format-html.c (efh_multipart_encrypted): We need to handle
	this here so we can properly keep track of the ciphervalidity
	stuff.  Also do it directly using the context, not
	multipartencrypted part.
	(efh_multipart_signed): with unsupported signature format, format
	as multipart/mixed, not as an attachment.
	(efh_multipart_signed): make the smime stuff optional.
	(efh_multipart_signed, efh_multipart_encrypted): Moved to
	em-format.c.
	(efh_application_xpkcs7mime): moved to em-format.c
	(efh_output_secure): renamed to efh_format_secure, linked into
	virtual method.  call parent class to do the validation foo then
	output the info if needed.
	(efh_format_message): fixed access to validity stuff to parent
	object.
	(efh_class_init): hook up format_secure virtual method.
	(*): removed some now-unused headers.

2004-01-29  Nicel KM  <mnicel@novell.com>

	* mail-component.c: removed CAMEL_PROVIDER_IS_EXTERNAL check
	* mail-account-gui.c: likewise
	* mail-offline-handler.c: likewise	

2004-01-29  Not Zed  <NotZed@Ximian.com>

	* em-format-html-display.c (efhd_attachment_button): check the
	snooped type for the icon/etc.
	(efhd_format_attachment): save the snooped type in the
	attach_puri.

	* em-format-html.c (efh_text_plain): If we had a snooped type, use
	that as the base type, rather than octet-stream, which will cause
	an attachment in attachment loop.

	* em-format.c (em_format_part_as): save the current snooped mime
	type in a stack if we had any.

2004-01-29  Not Zed  <NotZed@Ximian.com>

	** See bug #53320 and probably others

	* message-list.c (message_list_set_folder): NULL out
	message_list->folder when we clear it so it isn't left for another
	free when we switch again.

2004-01-29  Not Zed  <NotZed@Ximian.com>

	** See bug #52190.

	* message-list.c: Added folder/folder uri to the data stored for
	primary/secondary selection, uses a struct to store the data now.
	This is needed so when you cut/copy messages, and paste them, it
	doesn't end up 'pasting' the messages from the current folder, but
	from the one where the copy/cut took place.
	(clear_selection): helper to free data inside selection struct.

2004-01-29  Not Zed  <NotZed@Ximian.com>

	** See bug #53506.

	* mail-tools.c (mail_tools_folder_to_url): use a camelurl to do
	this properly, and handle fragment folder-paths.

	* em-composer-utils.c (em_utils_composer_send_cb): removed
	outbox_folder local, not necessary.

2004-01-28  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree-model.c (em_folder_tree_model_add_store): If the
	store is already in the model, remove it and then re-add it. Fixes
	bug #53422.

2004-01-28  Jeffrey Stedfast  <fejj@ximian.com>

	And thus completes the fixes for bug #52766.

	* em-folder-tree.c (tree_drag_drop): Don't call
	gtk_drag_get_data() manually here or we end up getting 2
	drag-data-received callbacks which is Not Good (tm).

	* em-folder-tree-model.c (drop_folder): Now takes a moved argument
	to specify whether or not the contents were moved (the move
	argument is just a hint).
	(drop_uid_list): Same.
	(em_folder_tree_model_drag_data_received): Updated for the above
	api changes.

2004-01-28  Not Zed  <NotZed@Ximian.com>

	** See bug #53179

	* mail-tools.c (mail_tool_get_local_movemail_path): Fix the
	movemail path.

	* mail-component.c (load_accounts): hack alert!
	* mail-send-recv.c (get_receive_type): hack alert!  hardcode mbox:
	to be a movemail source.

2004-01-28  Not Zed  <NotZed@Ximian.com>

	* mail-send-recv.c (setup_send_data): ref folder from
	mail_component_get_folder.

	* mail-ops.c (fetch_mail_fetch): ref the folder we get from
	mail_component_get_folder since it doesn't ref it.

2004-01-27  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (cp): Removed unneeded debug printfs.

	* em-folder-tree.c (tree_drag_data_received): Use
	gtk_tree_view_get_dest_row_at_pos() instead of
	gtk_tree_view_get_path_at_pos() since this is what Nautilus
	uses. Unfortunately, it still gives us back the wrong GtkTreePath
	so it looks to me like Gtk+ is borked. Apparently you need the
	latest and greatest gtk+-2.3.x cvs snapshot for this to work.

	* em-migrate.c (em_migrate_imap_caches_1_4): Copy the imap cache
	into the right place. Duh.

2004-01-27  Not Zed  <NotZed@Ximian.com>

	** See bug #53084 and others.
	
	* em-migrate.c (em_migrate): remove the vfolder_revert hack.

	* em-composer-utils.c (ask_confirm_for_only_bcc): removed unused
	vars.

	* mail-tools.c (mail_tool_get_local_inbox): removed, handled by
	mail_component_get_folder now.

	* mail-component.c (mail_component_*): Changed the api slightly.
	Using NULL as the component argument automatically implies you
	want the default component.
	(em_uri_from_camel, em_uri_to_camel): moved to em-utils.[ch].  Ok
	so it isn't namespaced right ... *shrug*.
	(mail_component_get_local_inbox): removed.
	(mail_component_get_folder): single entry point for getting
	standard folders.  This is MT-Safe.
	(mail_component_get_folder_uri): single entry point for getting
	standard folder uri's.  This is MT-Safe.
	(add_store): removed, moved to mail_component_add_store.
	(mail_component_load_store_by_uri): call mail_component_add_store
	directly rather than copying its code.
	(default_*_folder*): Removed, use accessor methods instead, fixed
	all callers.
	(setup_local_store): renamed to mc_setup_local_store, use proper
	url encoding too.  make run-once and thread-safe.
	(MailComponentPrivate): Added a lock.
	(mail_control_new): exported properly to kill warnings.
	(mail_component_init): dont setup_local_store or add accounts
	here.
	(impl_createControls): setup local store/accounts here.
	(mail_component_peek): dont setup vfolder storage here.
	(mc_startup): internal function to startup stuff needed for gui
	operation.
	(setup_search_context): make run-once.
	(mail_component_peek_search_context): call setup_search_context
	incase it isn't setup yet.
	(impl_upgradeFromVersion): remove the local store setup hack.

2004-01-27  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree-model.c (folder_renamed): fix the parent-finding
	logic.

2004-01-23  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (mail_component_init): add the offline handler
	interface to the component.
	(store_go_online, go_online): removed, handled by the offline
	handler.

	* mail-offline-handler.c (store_go_online): add the store to the
	tree model when we go online.

2004-01-26  Jeffrey Stedfast  <fejj@ximian.com>

	Fixes for bug #53251.

	* mail-account-gui.c (mail_account_gui_new): Convert the account
	drafts/sent folder uris to camel uris.
	(mail_account_gui_save): Convert drafts/sent camel uris into
	mailer uris when setting them on the account. Also, don't compare
	against file: anymore since those uris don't exist anymore.

	* em-migrate.c (em_upgrade_accounts_1_4): Update the drafts/sent
	folder uris.

2004-01-26  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (tree_drag_begin): Set priv->drag_row.

2004-01-26 Aaron Weber <aaron@ximian.com>

	* mail/default/C/Inbox: edited default message

2004-01-26  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (emft_copy_folders__copy): Use FOLDER_INFO_FAST
	bitflag here, since we don't care about unread counts when copying
	folders around.
	(emft_popup_delete_folders): Same.
	(emft_tree_row_expanded): Don't use FOLDER_INFO_FAST here.

2004-01-26  Radek Doulik  <rodo@ximian.com>

	* mail-session.c (main_get_filter_driver): translate DEMAND to
	INCOMING to get the right rules

	* mail-ops.c (mail_filter_on_demand): use FILTER_SOURCE_DEMAND

	Fixes #53266

2004-01-25  Rodney Dawes  <dobey@ximian.com>

	* em-folder-selector.c (em_folder_selector_create_new): Cast the
	name entry to a GtkWidget to avoid a compiler warning
	* em-folder-tree.c (emft_popup_new_folder): Grab focus on the name
	entry when we show the dialog (#53089)

	Fixes #53089

2004-01-23  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree-model.c (em_folder_tree_model_get_type): Removed
	the drag & drop interfaces, apparently these aren't good enough
	for what we need. Gotta implement this all the Hard Way (tm).
	(em_folder_tree_model_drag_data_received): Helper function called
	by the drag_data_received signal callback in em-folder-tree.c
	(em_folder_tree_model_row_drop_possible): Same idea.
	(em_folder_tree_model_row_drop_target): Again.
	(em_folder_tree_model_row_draggable): You get the idea...
	(em_folder_tree_model_drag_data_get): And again.
	(em_folder_tree_model_drag_data_delete): Same.
	(em_folder_tree_model_set_drag_drop_types): Setup the drag & drop
	types on the widget (since the target drag & drop types are now
	internal to the model code rathr than the tree code).

	* em-folder-tree.c (em_folder_tree_enable_drag_and_drop):
	Rewritten. Connect to all the drag & drop signals and implemnent
	them.

2004-01-23  Larry Ewing  <lewing@ximian.com>

	* mail-component-factory.c (factory): add the control id to the
	factory.

2004-01-23  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (upgrade_xml_uris_1_4): Handle where the file: url
	is roken (ie, points to a location out of the evolution
	namespace).

2004-01-23  Rodney Dawes  <dobey@ximian.com>

	* em-folder-selector.c: Set the mnemonic widget for "Folder _name:"

	Fixes #53088

2004-01-23  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c: use mail_session_get_sa_daemon_port

	* em-mailer-prefs.c (em_mailer_prefs_construct): added
	check_incoming_imap
	(em_mailer_prefs_apply): ditto
	(settings_changed): set check_incoming_imap sensitivity by
	check_incoming state

	* mail-session.c: add sa_daemon_port
	(mail_session_init): init sa_daemon_port and check_junk_for_imap
	(mail_session_check_junk_notify): watch for sa_daemon_port and
	check_junk_for_imap
	(mail_session_get_sa_daemon_port): new wrapper
	(mail_session_set_sa_daemon_port): ditto

2004-01-22  Jeffrey Stedfast  <fejj@ximian.com>

	* em-junk-filter.c (em_junk_sa_test_spamd): Oops, when calling
	spamassassin rather than spamc, we need to invoke /bin/sh -c
	since spamassassin is a shell script.
	(em_junk_sa_check_junk): Same.

	Fixes bug #53175.

	* em-junk-filter.c (pipe_to_sa): Don't need an argc (we don't even
	seem to use it??).
	(em_junk_sa_test_spamd_running): Don't invoke /bin/sh.
	(em_junk_sa_test_spamd): Simplified, also don't invoke /bin/sh.
	(em_junk_sa_check_junk): Cleaned up/simplified. Also don't invoke
	/bin/sh.
	(em_junk_sa_report_junk): Same.
	(em_junk_sa_report_notjunk): Same.
	(em_junk_sa_commit_reports): Same.

2004-01-22 Gary Ekker <gekker@novell.com>

	** See bug #53051
	
	* em-subscribe-editor.c (subscribe_set_store): fix typo in label

2004-01-22  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c (em_junk_sa_test_spamd): uncomment system wide
	spamd test

2004-01-20  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c: lock report calls by em_junk_sa_report_lock
	mutex

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

	* em-migrate.c (em_migrate_1_4): Migrate the ETree expanded state
	files as well as the GalView files.

	* message-list.c: s/hide_save_state/save_hide_state/g and
	s/hide_load_state/load_hide_state/g to be more consistant with the
	other state saving function names.

2004-01-21  Not Zed  <NotZed@Ximian.com>

	* em-migrate.c (cp_r): use camel_mkdir(0777) rather than 0777 &
	st.st_mode which isn't set anyway.
	(cp): use simple 0666 for the mode open, and then chmod after.
	(cp): check the return code of close, not just fsync.
	(cp): dont use fd[0] and fd[1] when we really just want simple
	variables, rename to readfd and writefd.

	** See bug #53159.

	* em-format.c (emf_message_rfc822): removed incorrect comment,
	this is not a fallback.

	* em-format-html.c (efh_text_plain): check the content-type of the
	containee object, not the holder.

	** See bug #52979.

	* em-format-html.c: take out text/x-patch and put in text/* for a
	text/plain fallback handler instead.

	* em-format-html-display.c (efhd_find_handler): allow the bonobo
	handlers to override the builtin ones.

2004-01-20  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (em_migrate_imap_caches_1_4): New function to
	migrate the imap cache.
	(em_migrate_1_4): Migrate the IMAP cache. Fixes bug #52985.
	(em_migrate_1_4): Copy over the searches.xml file. Fixes bug
	#52980.

	* mail-session.c (request_password): Changed the logic of the
	visibility of the passwd text so that we hid ethe passwd if the
	flags have the SECRET bit set.

2004-01-20  Not Zed  <NotZed@Ximian.com>

	** See Bug #52817.
	
	* mail-session.c (request_password, do_get_pass, get_password):
	Fix for api changes to camel_session_get_password.
	(request_password): if we have a STATIC password, don't show any
	'remember' checkbox.

2004-01-20  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c (EMFolderView): Make displayed_uid public.

	* em-folder-browser.c (em_folder_browser_show_preview): use
	em_folder_view_set_message rather than message_list_select_uid.
	When clearing, clear view->displayed_uid too.

2004-01-20  Not Zed  <NotZed@Ximian.com>

	** See bug #52965.

	* mail-component.c (mail_component_init): removed an epfixme, it
	already is an object.
	(impl_upgradeFromVersion): call mail_note_store after running the
	upgrade for local folders.

	* em-migrate.c (em_migrate): revert the vfolders.xml after we've
	imported them.

	* mail-vfolder.c (vfolder_revert): new api to re-load the vfolders
	file.

	** See bug #52885.

	* em-folder-browser.c (emfb_create_view_menus): unref the view
	instance/menu's rather than asserting, if they exist.
	(emfb_set_folder): call create_view_menu's rather than
	create_view_instance, so the view menu's are properly setup.
	(emfb_set_folder): call superclass first.

	** See bug #53028.

	* message-list.c (on_selection_changed_cmd): emit the
	cursor_activated if more than 1 item is selected also.

2004-01-20  Not Zed  <NotZed@Ximian.com>

	** See bug #52990.

	* mail-component.c (mail_component_init): re-enable auto-send-recv
	setup.

	** See bug #52989.

	* message-list.c (hide_load_state): clear the hidden table if
	setup, before loading.

2004-01-19  Radek Doulik  <rodo@ximian.com>

	* mail-config.c (MAIL_CONFIG_RC_DIR): path to gtkhtml's rc file
	(config_write_style): use MAIL_CONFIG_RC_DIR
	(mail_config_init): ditto

        * see http://bugzilla.ximian.com/show_bug.cgi?id=52969

2004-01-19  Not Zed  <NotZed@Ximian.com>

	* mail-ops.c (add_vjunk_info, add_vtrash_info): removed this like
	i asked radek to ages ago, just call the parent directly.
	(add_vtrash_or_vjunk_info): renamed to something saner.
	add_special_info.
	(add_special_info): removed the 'unread count' parameter & return
	the added info.

	** See bug #52854.

	* em-folder-tree.c (emft_tree_button_press): setup a FOLDER target
	for the popup menu.

	* em-popup.c (em_popup_target_free): implement free for
	TARGET_FOLDER, changed the target options somewhat.
	(em_popup_target_new_folder): implement folder selection target.
	Total Hack(tm) alert.
	(emp_standard_menu_factory): removed the stupid
	g_assert_if_not_reached() call.

	* message-list.c (message_list_destroy): NULL out the uid_nodemap
	when we destroy it.

2004-01-19  Not Zed  <NotZed@Ximian.com>

	* em-folder-browser.c (emfb_folder_expunge): get the toplevel
	widget here too, similar to bug 52161.

	** See bug #52956

	* em-composer-prefs.c (sig_edit_cb): The
	fileentry_add_script_script widget is a GnomeFileEntry not a
	GtkEntry.
	(sig_add_script_response): use get_full_path rather than snooping
	the gtkentry.  Also, don't close/quit the script dialogue on a bad
	name.

2004-01-19  Not Zed  <NotZed@Ximian.com>

	* em-migrate.c (em_upgrade_pop_uid_caches_1_4): if we can't open
	the pop3 cache dir, because it doesn't exist, it is not an error.

	** See bug #52983.

	* mail-component.c (em_uri_from_camel, em_uri_to_camel): Handle
	vfolder: uri's properly.  And make sure local uri's are properly
	encoded.
	(mail_component_get_folder_from_evomail_uri)
	(mail_component_evomail_uri_from_folder): removed, no longer used.
	(em_uri_from_camel): don't leak the camelurl.
	(d): disable debug

	* mail-vfolder.c (vfolder_load_storage): move the vfolder storage
	location to ~/.evolution/mail/vfolder rather than
	~/.evolution/mail (this is currently unused anyway).
	(uri_is_ignore): short-circuit exit if we find a match.
	(mail_vfolder_add_uri): dont exit immediately if we have a vfolder
	uri, but don't add it to local/remove either.
	(mail_vfolder_delete_uri): remove any uri from the local/remote
	source list while we're at it.

2004-01-19  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c (emfv_on_url_cb): properly decode the mailto
	url rather than treating it as a simple string.

	* em-format-html.c (efh_format_address): if we have a name part,
	add it to the mailto part.  As per rfc2368.  So it isn't lost for
	clicking/etc.

2004-01-16  JP Rosevear <jpr@ximian.com>

	* em-format-html-display.c (efhd_bonobo_object): pass in an
	exception to use

2004-01-16  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html.c (efh_format_address): Dump a struct
	_camel_header_address to an html string.
	(efh_format_header): Use efh_format_address() and set the
	EM_FORMAT_HTML_HEADER_HTML bit on the flags so we don't re-convert
	our html string into html.

	* mail-vfolder.c (mail_vfolder_rename_uri): s/g_fre/g_free/

	* em-utils.c (guess_account): Change 'tmp' to not be const - fixes
	a compile warning.
	(em_utils_expunge_folder): Cast parent to a GtkWindow.
	(em_utils_empty_trash): Same.

	* em-migrate.c (cp): Oops, still need to stat() the src file so we
	can report what percentage of the file has been completed so far
	and also so we don't quit copying until we've copied the whole
	file.

	* message-list.c (message_list_set_folder): Move
	'message_list->folder = folder;' out of the uri compare if-block
	and move it into the if-block that tests that folder != NULL.
	(regen_list_regen): Abort if the regen folder is not the same as
	the ml->folder.

2004-01-16  Not Zed  <NotZed@Ximian.com>

	* mail-folder-cache.c (storeinfo_find_folder_info): change this to
	check the store using the provider url_cmp and just lookup the
	folder name directly.  folder_compare can't be used for uri's,
	this stuff was so broken, my fault :(

	** See bug #52467.

	* em-folder-tree-model.c (sort_cb): handle null path (root?).

	* mail-vfolder.c (mail_vfolder_add_uri): map uri to euri before
	processing.
	(rule_changed): map uri to camel uri before looking up.
	(mail_vfolder_delete_uri): handle as euri internally.
	(mail_vfolder_rename_uri): "

	* mail-autofilter.c (vfolder_rule_from_message): map camel uri to
	euri before setting as vfolder source.

2004-01-16  Not Zed  <NotZed@Ximian.com>

	* default/C/Inbox: 
	* default/C/Makefile.am: 
	* default/Makefile.am: Startup files/folders.

	* em-migrate.c (emm_setup_initial): initial implementation of
	startup setup.

	** See bug #52896.

	* em-format-html-display.c (efhd_html_button_press_event): do this
	based on get_object_at rather than get_point_at, so we get the
	offset properly.

2004-01-15  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c: Make vfolder_store 'global'.

	* em-folder-tree-model.c (sort_cb): Fix bug #12600 by not sorting
	VFolders (ie. show them in the same order they appear in the
	editor).

	Fixes bug #52888
	
	* em-folder-tree-model.c (sort_cb): New sort function for the
	folder-tree.
	(em_folder_tree_model_init): Set the default sort func.
	(em_folder_tree_model_new): Set the default sort column.

	* em-folder-browser.c (emfb_list_built): Don't select the first
	unread mesg in the case where no mesg was previously
	selected. Fixes bug #52887 until we are able to add a user
	preference (for 2.2?).

	* em-migrate.c (cp): Only abort the copy if the dest folder both
	exists and contains data. Fixes bug #52880.
	(em_migrate): Abort if config.xmldb cannot be loaded. Fixes bug
	#52886.

2004-01-15  Rodrigo Moya <rodrigo@ximian.com>

	* em-folder-browser.c: removed ForgetPasswords verb.
	(emfb_forget_passwords): removed.

2004-01-15  Not Zed  <NotZed@Ximian.com>

	** See bug #52891.

	* em-format-html.c (em_format_html_get_type): protect against http
	cache not being able to be created.

	** See bug #52878.

	* em-folder-view.c (emfv_finalise): unhook message_changed too.
	(emfv_set_folder): hook/unhook message_changed too.
	(emfv_message_changed): implement, proxy to folder_changed.

2004-01-15  Not Zed  <NotZed@Ximian.com>

	** See bugs #51609 and #43515.

	* em-format-html-display.c (efhd_format_prefix): output flag for
	followup details above the message.
	(efhd_write_image): added to output icon data.

	* em-format-html.c (efh_format_do): call format_prefix before
	outputting the message in normal display mode.

	* em-format.c (emf_format_prefix): method called to format data
	before the first message output.  Default impl == noop.

2004-01-14  Jeremy Katz  <katzj@redhat.com>

	* evolution-mail.schemas.in.in: Add a description for 
	/apps/evolution/mail/junk/sa/local_only.

2004-01-14  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c: Split out the remapping code into
	e-util/e-bconf-map.[c,h] to be shared among components.

2004-01-13  Ross Burton  <ross@burtonini.com>

	* em-folder-browser.c (emfb_empty_trash):
	Pass the parent window, fixing a crasher.  Bug #52161.

2004-01-14  Not Zed  <NotZed@Ximian.com>

	** See bug 51660.
	
	* em-format-html-quote.c (efhq_multipart_related): setup part_id
	appropriately.

	* em-format-html-display.c (efhd_output_secure): use part_id in
	classid, and add .signed to part_id for subpart.
	(efhd_bonobo_unknown): use part_id in classid.
	(efhd_format_attachment): use part_id in classid's.

	* em-format-html.c (efh_multipart_related)
	(emfh_multipart_related_check): setup part_id for each subpart.
	(efh_output_secure): as above, and use the part_id for the
	classid.
	(em_format_html_add_pobject): use part_id for a generated classid.
	(efh_text_plain): setup pseudo-parts into part_id.

	* em-format.c (emf_format_clone): setup the part_id base, folder +
	uid.
	(emf_finalise): free the part_id gstring.
	(emf_init): allocate the part_id gstring.
	(em_format_add_puri): build the cid from the part_id rather than
	an arbitrary number, so it is more persistent.  Also save the
	part_id in the puri for multipart/related use.
	(emf_multipart_mixed, emf_multipart_alternative)
	(emf_multipart_appledouble, emf_multipart_encrypted)
	(emf_multipart_related, emf_multipart_signed): Set the part_id for
	each subpart.
	(emf_clear_puri_node): free part_id.

2004-01-13  Not Zed  <NotZed@Ximian.com>

	** See bug 51660.

	* em-format-html-print.c (em_format_html_print_print): dont take
	message, get the message from the source formatter.

	* em-format.c (emf_format_clone): Added folder and uid parameters,
	changed camelmedium to a mimemessage.

	* em-format-html-display.c (efhd_attachment_button): check the
	icon image cache and if the image is there use it.

	* em-icon-stream.c (em_icon_stream_get_image): api to lookup
	finished images in cache.
	(em_icon_stream_new): add a cache key arg.
	(emis_sync_close): store the image in the cache once its
	completed.

2004-01-13  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (em_migrate): Handle upgrading from 1.0.x and 1.2.x
	(code basically moved verbatim from e_config_upgrade).

	* mail-component.c (impl_upgradeFromVersion): Move all the
	major/minor/revision logic into em_migrate().

2004-01-12  Meilof Veeningen  <meilof@wanadoo.nl>

	* em-composer-utils.c: support for posting both to mail and to
	(multiple) folders

	* em-folder-browser.c: use em_utils_post_to_folder (works with NNTP)

	* em-folder-selection-button.[ch]: added multiple selection mode

	* em-folder-selector.[ch]: idem

	* em-folder-tree.[ch]: added multiple selection mode, no longer show
	disabled accounts

	* em-utils.c: various changes to allow posting to (multiple) folders

	* em-subscribe-editor.c: double-clicking a node in the editor updates
	it directly

	* mail-ops.c: for appending messages, set the "X-Mailer" header

2004-01-12  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c (em_junk_sa_check_junk): use
	mail_session_get_sa_use_daemon

	* mail-session.c: added SA prefs
	(mail_session_get_sa_local_only): new helper method
	(mail_session_set_sa_local_only): ditto
	(mail_session_get_sa_use_daemon): ditto
	(mail_session_set_sa_use_daemon): ditto
	(mail_session_check_junk_notify): fix the key comparison
	(mail_session_init): add gconf dir so that we get notified

	* mail-config.glade: added SA preferences

	* em-mailer-prefs.c (em_mailer_prefs_construct): added more junk
	prefs
	(em_mailer_prefs_apply): ditto

	* em-junk-filter.c: use preferences

2004-01-12  Larry Ewing  <lewing@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: fix up the controls factory
	location.

	* mail-component.c (mail_control_new): add new interface for
	getting a mail control with a folder_uri property bag.
	(get_prop): pbag get method.
	(set_prop): pbag set method.

2004-01-11  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (cp): Don't O_TRUNC the dest file, instead use
	O_EXCL and don't do anything if the dest file already exists (this
	way we don't re-migrate an mbox or corrupt any summary/ibex/meta
	files).

2004-01-12  Not Zed  <NotZed@Ximian.com>

	** See bug 52737.

	* em-format-html.c (efh_text_plain): treat text/* as inline
	content from the made-up multipart.

2004-01-09  Not Zed  <NotZed@Ximian.com>

	** See bug 52696.
	
	* mail-component.c (setup_search_context): move the searches to
	~/.evolution/mail/searches.xml (migration?).
	(setup_search_context): fix a merge error,
	vfoldertypes.xml->searchtypes.xml since it includes the system
	searches now.

2004-01-09  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree.c (emft_popup_properties_got_folder): add total +
	unread counts to properties page.

	* em-utils.c (filter_editor_response):
	* mail-vfolder.c (vfolder_editor_response): change for rule editor
	changes, ACCEPT->OK.

2004-01-09  Not Zed  <NotZed@Ximian.com>

	* em-format.c (em_format_format_text): keep the windows charset
	filter around until we're done since if we set it up we reference
	its memory.  Causes warnings and breaks message display.

	** See bug #52637.
	
	* em-inline-filter.c (em_inline_filter_new): added a content-type
	paramter for the base content type.
	(em_inline_filter_finalize): free base content type.
	(emif_types[]): Added 'plain' parameter, indicates type needs
	plain parameters set on content type.
	(emif_add_part): inherit the full base type if it is set, for
	plain parts.

	* em-format-html.c (efh_text_plain): pass the part's content-type
	to the inline filter.

2004-01-08  Not Zed  <NotZed@Ximian.com>

	** See bug #50786
	
	* GNOME_Evolution_Mail.server.in.in: Remove :: from startup wizard
	iid, and put the mail wizard into the right factory.

	* mail-component.c (impl_requestCreateItem, impl_handleURI): 
	* em-folder-browser.c (emfb_mail_compose): check we have an
	account before trying to send mail.

2004-01-07  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-component.c (mail_component_init): Don't migrate stuff here
	anymore.

	* mail-ops.c (uid_cachename_hack): Removed a hack that checked for
	the really old uid cache location and make the uid cache live in a
	better location (why have mail/pop/<account> and
	mail/pop3/cache-<account>? simply put the cache file in
	mail/pop/<account>/uid-cache).

	* em-migrate.c (em_migrate_dir): When copying over mbox folders,
	don't abort if we fail to copy over a summary file (big
	whoop). Also, if indexing was turned on in the evolution 1.4
	version of the folder, turn on indexing for that folder in the
	migrated mbox folder as well.
	(em_migrate_pop_uid_caches): Migrate the pop3 uid-cache
	files. Fixes bug #52464.
	(em_migrate): Call em_migrate_pop_uid_caches().

	* em-format-html.c (efh_format_address): Removed.
	(efh_format_header): Handle address formatting a little
	differently to address dwmw's complaints. Also now handles other
	headers such as Resent-* and Sender as well.

2004-01-07  Radek Doulik  <rodo@ximian.com>

	* em-message-browser.c (emmb_init): as below

	* em-folder-browser.c (emfb_init): always show vertical scrollbar,
	we do the same for message list and it avoids ugly flicker

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

	* em-message-browser.c (emmb_set_message): Protect against a NULL
	message-info. Afaik, this can only happen if the message has since
	been removed? Might be a larger problem here... Anyways, fixes the
	crash in bug #52297.

2004-01-05  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree-model.c (folder_renamed_cb): Clone the
	CamelRenameInfo and ref the store before emitting the async event.
	(folder_deleted_cb): Same idea but for CamelFolderInfo's.
	(folder_created_cb): Here too.
	(folder_subscribed_cb): Same.
	(folder_unsubscribed_cb): And here.
	(folder_renamed): Split out from folder_rename_cb(), free the
	CamelRenameInfo and unref the store when done.
	(folder_unsubscribed): Same idea.
	(folder_subscribed): Same.

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

	* em-junk-filter.c: add NULL at the end of argv for execvp (poited
	out by Frank Solensky, thanks)

2004-01-05  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-browser.c (emfb_list_message_selected): Check that the
	folder isn't NULL (ie. no folder is selected). Fixes bug #52207.

	* message-list.c (message_list_set_folder): Remove the
	cursor-activated idle callback.

	* mail-send-recv.c (build_dialog): Set the send/recv dialog to
	non-modal. Fixes bug #50127.

	* em-folder-tree-model.c (folder_subscribed_cb): If we aren't in
	the main thread, proxy it over to the main thread.
	(folder_unsubscribed_cb): Same.
	(folder_created_cb): Here too.
	(folder_deleted_cb): And here.
	(folder_renamed_cb): Again here.

	* em-folder-view.c (emfv_set_folder_uri): Pass mail_thread_queued
	to mail_get_folder() instead of mail_thread_new so that we
	eliminate a race when switching folders in the UI.

2004-01-05  Not Zed  <NotZed@Ximian.com>

	** See bug #50996.

	* em-format-html-display.c (efhd_find_handler): implement override
	for unknown types, try bonobo handlers.
	(efhd_bonobo_unknown): formathandler for bonobo objects.

	* em-format.c (em_format_find_handler): make virtual, rename to
	emf_find_handler.

2004-01-04  ERDI Gergo  <cactus@cactus.rulez.org>

	* em-folder-view.c (emfv_on_url_cb): Emit a hover-url signal when
	the user mouses over a URL, ...
	(emfv_hover_url_impl): ... and use BonoboUI to change the status
	bar message...
	(em_folder_view_set_statusbar): ... unless we are asked not to, ...

	* mail-component.c (impl_createControls): ... like in the case of
	the mail component, ...
	(view_hover_url_cb): ... that uses the ActivityHandler to do the
	same

	Add these together, and #127536 is neatly solved.

2004-01-04  David Woodhouse  <dwmw2@infradead.org>

	* em-format-html-display.c: Mail warning grammar typo fix.

2003-12-22  David Moore  <davmre@bellsouth.net>

	* em-popup.c (emp_part_popup_set_background): Implemented; sets an 
	image attachment as the GNOME wallpaper.

	* em-utils.c (emu_save_part_done): Created a prototype at the top
	of the file.
	(em_utils_save_part_to_file): Added; save a message part to a
	specified file on disk.
 
2003-12-18  Rodney Dawes  <dobey@ximian.com>

	* em-message-browser.c (emmb_init): Merge in
	evolution-mail-message-display.xml first, since it is the parent UI
	XML, really fixes bug #49949

2003-12-16  JP Rosevear  <jpr@ximian.com>

	* em-format-html-display.c: #ifdef out certain code pieces if
	s/mime isn't supported

2003-12-14  JP Rosevear <jpr@ximian.com>

	* em-folder-tree.c (emft_tree_row_collapsed): Fix erroneous
	function call

	Fixes #52120
	
2003-12-12  Not Zed  <NotZed@Ximian.com>

	* mail-config.c (config_write_style): put the style in .evolution.

	** See bug #52023.

	* message-list.c (message_list_select_uid): noop if we've been
	destroyed (foldre == NULL).

	** See bug #52108.

	* em-format.c (em_format_is_attachment): also recognise
	application/pkcs7-mime for mailers who like to make up their own
	standards.

	* em-format-html.c (type_builtin_table[]): *
	em-format-html-display.c (type_builtin_table[]): make recognise
	application/pkcs7-mime too.

2003-12-11  Chris Toshok  <toshok@ximian.com>

	* Makefile.am (INCLUDES): get the build moving again.  add
	CERT_UI_CFLAGS here for the time being.

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

	Fixes bug #1717.

	* em-folder-browser.c (emfb_list_built): If we have a uid to
	select, select that instead of selecting the first unread.
	(emfb_set_folder): CamelObject::meta_get() actually returns a
	strdup'd buffer, so we need to free it. Get the last selected uid
	and set that up as the uid to select when the message-list
	finishes building.
	(emfb_list_message_selected): Save the selected uid.
	(emfb_init): Connect to the message-list's message_selected signal
	so that we can save selected state (don't want to do this in
	EMFolderView or MessageList because we don't want the state to be
	saved for the EMMessageBrowser).

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

	* em-folder-tree.c: Shorten the namespace of some internal
	functions to just emft.
	(emft_popup_delete_rec): Don't delete the contents of a folder if
	it is a vFolder. Fixes bug #52029.

	* em-mailer-prefs.c (em_mailer_prefs_construct): Use newv() here
	and pass an array of GTypes - makes it simpler to change the order
	of columns later and/or add new columns if we need to. Also makes
	the line shorter :-)

2003-12-11  Grahame Bowland  <grahame@angrygoats.net>

	* em-format-html.c (efh_format_header): display 
	x-evolution-mailer pseudo header irrespective of 
	xmailer_mask. This is now handled by a header 
	configuration dialog.

	* mail-config.glade: add tab to mail configuration 
	dialog to allow custom headers to be specified for 
	display.

	* em-mailer-prefs.h: modify struct _EMMailerPrefs to 
	add widgets for custom header tab. Add defines for custom 
	header flags. Add struct EMMailerCustomHeader to describe
	custom headers, and add function 
	em_mailer_custom_headers_from_xml to allow XML from gconf 
	key to be parsed into this structure.

	* em-folder-view.c (emfv_setting_notify): catch changes to 
	custom header gconf key and update mail view to correspond

	* em-mailer-prefs.c (em_mailer_prefs_apply): save custom 
	headers to gconf
	(header_list_enabled_toggled): toggle clicked toggle column
	(add_header): add header to custom header list if valid
	(remove_header): remove selected custom header
	(is_valid_header): return true if passed header is valid, 
	otherwise false
	(entry_header_changed):	call add_header_update_sensitivity
	(em_mailer_prefs_construct): initialise header selection tab. 
	Load gconf data for header selection dialog.
	(em_mailer_custom_header_to_xml): load a header structure 
	from XML document structure
	(em_mailer_custom_header_from_xml): load a header 
	structure from a string containing valid XML. if any failure, 
	the header.name is set to NULL.
	(header_list_row_selected): call 
	remove_header_update_sensitivity
	(remove_header_update_sensitivity): set the sensitivity of 
	the remove button to FALSE if the list is empty or nothing 
	is selected. Otherwise, set it to TRUE.
	(add_header_update_sensitivity): set the sensitivity of the 
	the add button to FALSE if the entry box is empty, contains 
	a duplicate header, or contains an invalid header. Otherwise, 
	set it to TRUE.

	* evolution-mail.schemas.in.in: add mail/display/headers 

2003-12-10  Larry Ewing  <lewing@ximian.com>

	* em-format-html.c: add text/x-patch as a plain type.
	(efh_text_enriched): add table around the enriched part so it
	matches html and text modes.

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

	* em-migrate.c (em_migrate_dir): Modified to simply copy mbox
	files from one place to another (and the summary files) rather
	than going thru camel so as to bypass the need for parsing MIME.

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

	* em-migrate.c (get_local_store): Fixed a leak.

	* mail-component.c (impl_upgradeFromVersion): Implemented.

	* em-folder-tree.c (em_folder_tree_set_selected): Add INFO_FAST
	here as we don't need it to get unread counts.
	(tree_row_expanded): Here too.

	* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
	Check CAMEL_FOLDER_NOCHILDREN.

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

	Fixes bug #51045

	* mail-folder-cache.c (real_flush_updates): Update the unread
	count in the model if the folder got new mail.

	* em-folder-selection.c (em_select_folder): Updated.

	* em-folder-selection-button.c
	(em_folder_selection_button_clicked): Updated.

	* em-folder-tree-model.c (em_folder_tree_model_set_unread_count):
	New function to update the unread count for a folder.

	* mail-component.c (mail_component_peek_tree_model): Don't ref the
	model. Also renamed s/get/peek/

2003-12-10  Not Zed  <NotZed@Ximian.com>

	* em-folder-tree.c (em_folder_tree_get_folder_info__got): check
	m->fi != NULL before dereferencing it.

2003-12-10  Not Zed  <NotZed@Ximian.com>

	* em-format-html-display.c (efhd_multipart_signed):
	* em-format-html.c (efh_multipart_signed): 
	* em-format.c (emf_multipart_signed): treat
	application/pkcs7-signature as application/x-pkcs-signature.
	Stupud non-rfc-compliant mailers from apple.  Bug #51750.

	* em-folder-selection.c (em_select_folder): rewritten to get rid
	of hte old crap that should've been gotten rid of before.  Bug
	#51602.
	(em_folder_selection_run_dialog_uri): removed.
	(em_folder_selection_run_dialog): removed.  this file is gutted
	and should probably be removed.

	* em-folder-selector.h: use a POSITIVE value for the response
	value, gtk uses -ative ones.  Bug #51752.

	* Makefile.am (INCLUDES): added smime/lib and smime/gui to
	includes.

	* em-folder-tree.c (emft_popup_rename_folder): removed unused 'why',
	why not?

	* em-format-html-display.c (efhd_xpkcs7mime_validity_clicked):
	setup a table of buttons to view any certs we have.

	* em-folder-browser.c (emfb_activate): separeate view_menu
	unreffing from view_instance.  fixes a runtime warning.

	** See bug #51718.

	* mail-component.c (em_uri_to_camel): handle an e-uri which has an
	account uid which isn't in user@host format.

2003-12-09  Not Zed  <NotZed@Ximian.com>

	** See bug #51899.

	* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
	CAMEL_FOLDER_CHILDREN is only advisory, some servers don't give it
	to you.

2003-12-06  JP Rosevear <jpr@ximian.com>

	* Makefile.am: Remove hard coded disable deprecated flags
	
2003-12-05  Rodney Dawes  <dobey@ximian.com>

	* em-folder-tree.c (render_display_name): Remove the extra || unread
	check in the conditional in the g_object_set () call

2003-12-05  Rodney Dawes  <dobey@ximian.com>

	Fixes bug #51482
	
	* em-folder-tree.c (render_display_name): Don't hardcode colors
	for the folder tree, instead use bold for unread, as in 1.4

2003-12-05  Radek Doulik  <rodo@ximian.com>

	* em-html-stream.c (emhs_sync_flush): use new gtk_html_flush
	method instead of forcing processing of all gtk events

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

	* em-folder-tree-model.c (em_folder_tree_model_remove_folders):
	Make sure folder_path is non-NULL ("Loading..." nodes will have a
	NULL path). Fixes bug #51731.

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

	* mail-ops.c (empty_trash_empty): Get the proper local folders
	store uri (it's not file:/ anymore). Fixes bug #51618.

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

	Fixes bug #51605.

	* em-folder-selector.c (emfs_response): Handle creating a new
	folder (pop up a create-folder-selector dialog).

	* em-folder-tree.c (emft_popup_new_folder_response): Moved all the
	logic into em_folder_tree_create_folder().
	(em_folder_tree_create_folder): New function to create a folder.

2003-12-04  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c (pipe_to_sa): add new err_retval parameter,
	which specifies which value to return if something went wrong
	(like failed to exec, ...). update all calls by that. actual junk
	check has err_retval = 0 to avoid marking false spam - non-zero
	retval means junk.

	* em-folder-view.c: set junk toolbar buttons pixmaps

	* mail-session.c: monitor gconf key
	/apps/evolution/mail/junk/check_incoming and keep session junk
	flag uptodate

	* em-mailer-prefs.c (em_mailer_prefs_construct): added junk
	preferences

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

	* mail-config.c (uri_to_evname): Updated to add use mail subdirs.
	(mail_config_uri_renamed): Updated cachenames[]
	(mail_config_folder_to_cachename): Fixed to use the correct path.

	* em-folder-browser.c (emfb_create_view_menus): Updated the
	galview path to point to the evo-1.5 location.
	(emfb_set_folder): Update the galview view_instance.
	(emfb_create_view_instance): Split out from
	emfb_create_view_menus()
	(emfb_create_view_menus): Reduced code, call
	emfb_create_view_instance().

	* em-folder-selector.c (emfs_create_name_activate): Emit the OK
	response, not the CREATE_NEW response. Also,
	g_signal_emit_by_name() does not take a GQuark detail argument, so
	don't pass one. Fixes bug #51661.

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

	* em-folder-view.c (emfv_set_folder): Sync the folder before
	replacing it with the new folder.

	* em-folder-tree.c (em_folder_tree_set_selected): Need to prepend
	a "/" to path if the path is the url fragment. Also fixed to
	select the store node if path == "/".
	(emft_popup_rename_folder): Set oldpath and newpath to the proper
	values. Fixes bug #51656.

	* em-folder-selector.c (em_folder_selector_get_selected_uri):
	Fixed a FIXME by using the CamelProvider url flags to determine if
	the url used url->fragment or url->path as the folder path.
	(em_folder_selector_get_selected_path): Don't allow path strings
	to start with "//".

2003-12-03  JP Rosevear <jpr@ximian.com>

	* em-folder-tree.c (em_folder_tree_destroy): remove the source
	before saving 

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

	* em-folder-tree.c (em_folder_tree_save_state): Set the
	save_state_id to 0 or we will never get a chance to run again.

2003-12-03  Ettore Perazzoli  <ettore@ximian.com>

	* mail-vfolder.c: Do not #include "evolution-shell-component.h".

	* Makefile.am (libevolution_mail_la_SOURCES): Don't compile
	mail-importer.[ch] for now.

	* mail-component-factory.c: Do not #include
	<evolution-shell-client.h>.
	* mail-config.c: Likewise.

	* mail-vfolder.h: Do not #include <evolution-storage.h> or
	<evolution-shell-component.h>.

	* mail.h: Do not #include <evolution-storage.h>.

	* mail-ops.h: Do not #include <evolution-storage.h>.
	(mail_scan_subfolders): Remove prototype.
	(mail_update_subfolders): Likewise.

2003-12-03  JP Rosevear <jpr@ximian.com>

	* em-folder-tree.c (em_folder_tree_destroy): save the state
	immediately if there is a timeout set
	(em_folder_tree_save_state): be true GSourceFunc and just return
	FALSE to remove the source

2003-12-03  Not Zed  <NotZed@Ximian.com>

	* mail-autofilter.c (rule_match_thread): changed to setup the rule
	part properly, it could never have worked.  Bug #51601.

	* em-popup.c (emp_uri_popup_address_add): implement.

	* em-folder-view.c (emfv_popup_add_sender): implement.
	(emfv_add_sender_addressbook): hook up to above func.

	* em-utils.c (em_utils_add_address): implementation to add an
	email address to the addressbook.
	(emu_add_address_cb): callback required for funny api.  Bug
	#51321.

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

	* em-folder-tree-model.c (drop_uid_list): Moved here.
	(drop_folder): Moved here.
	(import_message_rfc822): Moved here.
	(drop_message_rfc822): Moved here.
	(drop_text_uri_list): Moved here.
	(model_drag_data_received): Moved the logic from em-folder-tree.c
	into here.
	(model_row_drop_possible): Same.
	(model_row_draggable): Same.
	(drag_text_uri_list): Moved here.
	(model_drag_data_get): Moved logic here.
	(model_drag_data_delete): Moved logic here.

	* em-folder-tree.c (drag_data_get_cb): Pass the full_name to
	camel_store_get_folder() rather than the path.
	(drag_data_received_cb): Same.
	(drop_uid_list): Removed.
	(drop_folder): Removed.
	(import_message_rfc822): Removed.
	(drop_message_rfc822): Removed.
	(drop_text_uri_list): Removed.
	(drag_data_received_cb): Removed.
	(row_drop_possible_cb): Removed.
	(row_draggable_cb): Removed.
	(drag_text_uri_list): Removed.
	(drag_data_get_cb): Removed.
	(drag_data_delete_cb): Removed.
	(em_folder_tree_enable_drag_and_drop): Don't connect to any of the
	drag & drop signals, they don't exist anymore.

	* mail-component.c (impl_createControls): Enable drag-and-drop.

	* em-folder-tree.c (em_folder_tree_new_with_model): Connect to the
	loading row signal.
	(loading_row_cb): Expand the path if needed.
	(em_folder_tree_destroy): Disconnect from the loading-row signal.
	(em_folder_tree_enable_drag_and_drop): New function to enable
	drag-and-drop.
	(em_folder_tree_new): Remove drag-and-drop setup code.

	* em-folder-tree-model.c (em_folder_tree_model_class_init): Define
	the loading-row signal.
	(em_folder_tree_model_set_folder_info): emit the loading-row signal.

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

	* em-folder-tree.c (em_folder_tree_new): Fixed to pass the
	evolution dir into em_folder_tree_model_new().
	(model_save_state): Removed.
	(em_folder_tree_save_state): Moved all the saving logic into
	em_folder_tree_model_save_expanded().

	* em-folder-tree-model.c (em_folder_tree_model_new): Load the
	expanded state off disk.
	(em_folder_tree_model_save_expanded): New function to save
	expanded state.
	(em_folder_tree_model_get_expanded): new function to get if a node
	should be expanded.
	(em_folder_tree_model_set_expanded): new function to set the
	expanded state of a node.

	* mail-component.c (mail_component_init): Pass the evo dir to
	em_folder_tree_model_new() which now requires it.

2003-12-02  Rodney Dawes  <dobey@ximian.com>

	* Makefile.am: Version the schemas
	* evolution-mail.schemas: Removed
	* evolution-mail.schemas.in.in: Added

2003-12-02  Not Zed  <NotZed@Ximian.com>

	* mail-config-druid.c (mail_config_druid_new): moved the
	gtk_widget_show_all to before we add the pages, otherwise it can
	override per-page logic.  Bug #50790.

	* message-list.c (message_list_create_extras): setup another image
	(followup completed) to flag status list.
	(states_pixmaps[]): added flag_for_followup_done.
	(ml_tree_value_at): return 0,1 or 2 for completed icon.  also use
	the real ints, these shouldn't have been true/false.  Bug #43514.

	* evolution-mail.schemas: Added empty_trash prompt key.

	* em-utils.c (em_utils_prompt_user): changed to take the gconf
	'prompt again' key directly.  Fixed callers.
	(em_utils_expunge_folder): prompt the user with an expunge
	specific message.
	(em_utils_empty_trash): have an empty-trash specific message for
	prompting confirm.
	(emu_confirm_expunge): removed, no longer needed.  Bug #38613.
	(em_utils_expunge_folder): remove most line feeds, let the label
	wrap them.
	(em_utils_empty_trash): ditto.

	* em-subscribe-editor.c (sub_folder_subscribed): update the ui
	selection state after we're done.  maybe we should listen on the
	model but this is easier.  Bug #50861.

	* em-message-browser.c (emmb_activate): hook up our own verb list.
	(emmb_message_verbs[], emmb_close): implement the close verb.
	Bug #51558.

	* em-format-html-display.c (efhd_attachment_popup): duh, actually
	add the menu list we create.  Bug #49902.

	* em-format.c (d): turn off debug, committed by accident.

2003-12-01  Ettore Perazzoli  <ettore@ximian.com>

	* mail-mt.c (do_op_status): Use data->activity_id, not local
	activity_id.

2003-12-01  Ettore Perazzoli  <ettore@ximian.com>

	* mail-mt.c (struct _mail_msg_priv): Remove member "activity".
	(mail_operation_status): Un-#if 0 the code.

	* mail-component.c (struct _MailComponentPrivate): New member
	activity_handler.
	(mail_component_init): Initialize.
	(impl_dispose): Unref.
	(mail_component_peek_activity_handler): New.
	(impl_createControls): Create an ETaskBar, attach it to the
	ActivityHandler, and return it to the caller as the statusbar
	control.

2003-12-01  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (impl_createControls): Pass a label for the
	status bar control for now.

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

	* mail-config.c (mail_config_signature_run_script): Use fcntl() to
	set FD_CLOEXEC on each fd rather than close()ing it. Apparently
	Linux's older pthread implementations use sockets and so this
	fouls threading up. GO LINUX! GO!

2003-12-01  Rodney Dawes  <dobey@ximian.com>

	* GNOME_Evlution_Mail.server.in.in:
	* em-account-prefs.c:
	* em-composer-prefs.c:
	* em-mailer-prefs.h:
	* mail-component-factory.c:
	* mail-config-factory.c:
	* mail-font-prefs.h:
	* importers/*.server.in.in:
	* importers/elm-importer.c:
	* importers/evolution-mbox-importer.c:
	* importers/evolution-outlook-importer.c:
	* importers/netscape-importer.c:
	* importers/pine-importer.c: Use BASE_VERSION for repo_ids and OAFIIDs

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

	* em-folder-tree.c (em_folder_tree_get_folder_info__got): Updated
	to call em_folder_tree_model_set_folder_info().
	(folder_subscribed_cb): Removed.
	(folder_unsubscribed_cb): Removed.
	(folder_created_cb): Removed.
	(folder_deleted_cb): Removed.
	(folder_renamed_cb): Removed.

	* em-folder-tree-model.c (em_folder_tree_store_set_folder_info):
	New function to replace tree_store_set_folder_info() which had
	been in em-folder-tree.c
	(em_folder_tree_model_remove_uri): Made private.
	(em_folder_tree_model_remove_store_info): Made private.
	(em_folder_tree_model_remove_folders): New function to replace
	remove_folders() from em-folder-tree.c
	(em_folder_tree_model_new): No longer takes any args.

	* em-folder-tree.c (em_folder_tree_new): Updated.

	* mail-component.c (add_store): Add the store to the model rather
	than the treeview.
	(impl_createControls): create a new treeview based on the
	already-instantiated model.
	(mail_component_init): Create a new tree model.
	(mail_component_remove_store): Remove the store from the model
	directly.
	(mail_component_get_tree_model): Updated.

	* em-folder-tree.c (folder_unsubscribed_cb): Call
	em_folder_tree_model_remove_folders() rather than the deprecated
	internal remove_folders() function.
	(folder_renamed_cb): Same.
	(em_folder_tree_remove_store): Removed.
	(em_folder_tree_add_store): Removed.
	(remove_folders): Removed.

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

	* em-composer-utils.c (composer_get_message): rfc2047 encode the
	Organization header value.

	* em-folder-tree.c (em_folder_tree_get_folder_info__got): Make
	sure our parent folder hasn't been unsubscribed or else we get a
	segfault here if it has.

03-11-28  Dave Camp  <dave@ximian.com>

	* em-folder-tree.c (render_pixbuf): Set the pixbuf renderer
	invisible for stores.

2003-11-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config.c (mail_config_get_account_by_uid): New function.

	* em-folder-tree.c (tree_store_set_folder_info): Expand the tree
	node if the saved state tells us it was expanded the previous
	session.
	(em_folder_tree_load_state): Load the saved state.
	(em_folder_tree_add_store): Conditionally expand the store node.
	(em_folder_tree_new_with_model): Expand all the nodes that should
	be expanded.

2003-12-01  Radek Doulik  <rodo@ximian.com>

	* em-folder-tree.c (render_pixbuf): use CAMEL_VTRASH_NAME,
	CAMEL_VJUNK_NAME

2003-11-28  Radek Doulik  <rodo@ximian.com>

	* em-folder-tree.c (render_pixbuf): added junk icon to folder
	icons

2003-12-01  Not Zed  <NotZed@Ximian.com>

	* em-folder-browser.c (emfb_edit_cut, emfb_edit_copy)
	(emfb_edit_paste): override the em-folder-view impl, and handle
	the search bar properly.  For #48746.

	* mail-security.glade: added some padding to the security details
	frames.

	* em-format-html-display.c (efhd_xpkcs7mime_validity_clicked):
	some cosmetic layout changes.

2003-11-27  Charles Zhang  <charles.zhang@sun.com>

	* mail-account-editor.c (construct): connect "changed" signal.
	(mail_account_editor_changed): change signal handler.
	Fixes bug #48998.

2003-11-30  Ettore Perazzoli  <ettore@ximian.com>

	* mail-offline-handler.c: Remove all the syncFolder stuff since
	it's not in the Component interface anymore.

	* mail-mt.c: Remove declaration for global_shell_client.  #if 0
	all the code that uses that.

	* mail-component-factory.c: Remove declaration for
	global_shell_client.

	* mail-vfolder.c: Remove declaration for global_shell_client.

2003-11-26  JP Rosevear  <jpr@ximian.com>

	* Makefile.am: turn on deprecated Gtk stuff

2003-11-24  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (em_folder_tree_save_state): New function to
	save tree expanded state.
	(em_folder_tree_queue_save_state): New function to queue saving of
	the expanded state.
	(em_folder_tree_construct): Connect to the row-collapsed signal.
	(tree_row_collapsed): Queue a save-state.
	(tree_row_expanded): Queue a save state.
	(em_folder_tree_get_folder_info__got): Queue a save-state.

2003-11-25  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c (em_folder_view_print): set session on print
	formatter for signatures to work.

	* em-message-browser.c (emmb_destroy): kill warning.

	* em-format-html.c (efh_output_secure): same as
	efhd_output_secure, output the security bar, but for
	printing/plain html.
	(efh_application_xpkcs7mime): use output_secure.
	(em_format_html_multipart_signed_sign): removed, output_secure
	does what this did.

	* em-format-html-display.c (smime_sign_table,
	smime_encrypt_table): Added a short description for the mail
	display.
	(efhd_xpkcs7mime_button): only good/bad signature at this point,
	if only encrypted, then display 'bad' icon.
	(efhd_output_secure): output the security bar/button and handle
	multi-level enveloping properly.
	(efhd_application_xpkcs7mime): just call output_secure to do
	the security bar.
	(efhd_multipart_signed): same.
	(efhd_signature_button): removed, no longer used.
	(efhd_signature_check): removed, no longer used.

2003-11-24  Radek Doulik  <rodo@ximian.com>

	* em-format-html.c (efh_text_plain): use new colors
	(efh_text_html): ditto

	* em-format-html-display.c (efhd_gtkhtml_realise): set new colors
	according to style

	* em-format-html.c (efh_init): init new colors

	* em-format-html.h: added frame and content colors

	* em-format.c (emf_multipart_mixed): do not use horizonal rule,
	attachment content is now inside simple frame

	* em-format-html.c (efh_text_plain): add 6 points around text
	plain content and frame it
	(efh_text_html): frame text/html
	(efh_format_do): fix body tag, set bgcolor
	(em_format_html_format_headers): do not put headers into own
	table, content body is framed now instead
	(efh_format_message): update for headers/body changes

	* em-format-html-display.c (efhd_format_attachment): put
	additional vertical space around attachment button

2003-11-22  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree-model.c (model_drag_data_received)
	(model_row_drop_possible, model_row_draggable)
	(model_drag_data_get, model_drag_data_delete): Swap the retval
	varargs value to the last argument instead of the first.

2003-11-20  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config.c (mail_config_uri_deleted): Removed call to
	mail_tool_delete_meta_data(). Fixes bug #51236.

	* mail-component.c (impl_handleURI): Implemented.
	(mail_component_class_init): Overload the handleURI method.

2003-11-20  Jeffrey Stedfast  <fejj@ximian.com>

	Fixes bug #51012.

	* em-folder-tree.c (emft_popup_rename_folder): Fixed a FIXME to
	not use the OS-specific g_path_*() stuff.
	(em_folder_tree_set_selected): For the case where the tree has
	already loaded enough subfolders to include the path we need to
	select, exopand the nodes to that path as well. For the case that
	the tree hasn't loaded enough of the folder nodes, load them and
	then have the node selected/expanded to.

2003-11-19  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-selector.c (emfs_create_name_activate): Emit the
	response signal with the RESPONSE_NEW value.
	(emfs_create_name_changed): Sanity check the entry text and set OK
	sensitivity.
	(folder_selected_cb): If there is an entry widget, then call
	name_changed() to decide sensitivity, else set OK to be sensitive.

	* em-utils.c (em_utils_selection_set_urilist): Same.

	* em-format-html-display.c (efhd_drag_data_get): Same as below.

	* em-folder-tree.c (drag_text_uri_list): Terminate each url of a
	text/uri-list with a \r\n.

2003-11-19  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Add an
	"evolution:uri_schemas" attribute.

2003-11-19  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (em_uri_to_camel): if we're setting the
	fragment, strip leading /'s.

	* mail-tools.c (mail_tool_get_meta_data)
	(mail_tool_delete_meta_data, meta_data_key): old stuff killed.
	(mail_tool_uri_to_folder): handle email: uri's specially.  this is
	a bit of a hack, the filter callbacks should manage this itself
	since filters are the only bits which use those uri's.

2003-11-18  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (em_migrate_dir): Don't leak the message objects.

	* em-folder-tree.c (em_copy_folders): Execute asynchronously by
	queueing the copy in another thread.
	(em_copy_folders__copy): Moved the original logic here.

2003-11-18  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (tree_row_expanded): Queue the
	camel_store_get_folder_info() call in another thread.
	(em_folder_tree_get_folder_info__got): Moved all the logic of
	tree_row_expanded here.

2003-11-17  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (tree_row_expanded): Fixed to check fi->child
	as well (since mbox does it right).
	(emft_popup_new_folder_response): Fixed to subscribe to the
	correct folder.
	(emft_popup_delete_folders): Fixed to use the full_name rather
	than the path.

	* em-folder-selection-button.c (set_contents): Fixed to not
	include leading '/' in the folder name in the label.

	* em-folder-tree.c (emft_popup_new_folder_response): Implemented
	error reporting via gtk dialogs.
	(emft_popup_copy_folder_selected): Same.

2003-11-17  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (emft_popup_new_folder_response): Use a
	folder_name rather than a path as the name argument to
	camel_store_create_folder(), fixes creation of IMAP folders.

2003-11-17  Not Zed  <NotZed@Ximian.com>

	* em-folder-selection-button.c (set_contents): handle an
	unparsable url without crashing.

	* mail-tools.c (mail_tool_get_local_inbox): thin wrapper on
	mail_component_get_local_inbox.

	* mail-component.c (mail_component_get_local_inbox): helper to get
	the default local inbox.

	* mail-ops.c (fetch_mail_fetch): if we can't get the inbox, make
	sure we still unref the filter driver here by using hte same exit
	code.  Fixes a crash.

2003-11-14  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-tree.c (emft_popup_new_folder_response): We can't use
	a uri to do a lookup of a store-info on the store_hash, we have to
	get a CamelStore first.
	(row_draggable_cb): validate the iter before using it.
	(row_drop_possible_cb): Same.
	(drag_data_received_cb): Here too.
	(drag_data_get_cb): Same.
	(drag_data_delete_cb): Again here.
	(tree_store_set_folder_info): Recursively add nodes if fi->child
	is non-NULL rather than adding a dummy node.
	(folder_renamed_cb): Implemented.

2003-11-14  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-mt.c (set_stop): Removed most of the code. This is
	basically now a nop. Need to somehow get the uic and fix this.

	* folder-browser-factory.[c,h]: Removed.

	* mail-component.c (folder_selected_cb): Don't create a new view
	anymore, simply set the new folder uri on the folder browser. This
	makes the mailer use a lot less memory than in 1.x
	(view_control_activate_cb): Moved here from
	folder-browser-factory.c
	(impl_createControls): Connect to the activate signal on the view
	control.

2003-11-14  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-selection.c (folder_selected_cb): Only set OK to
	sensitive if the selected node is not a store node.

	* em-folder-tree-model.c: Moved the store_hash and uri_hash from
	EMFolderTreePrivate into here instead.

	* em-folder-tree.c: Updated for above changes.

2003-11-14  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (emfv_popup_move): Updated.
	(emfv_popup_copy): Updated.

	* em-folder-tree.c (emft_popup_copy): Updated.
	(emft_popup_move): Updated.

	* em-folder-selection.c (create_dialog): New convenience function
	to construct the dialog contents for all three public functions.
	(em_folder_selection_run_dialog): Now longer takes a caption arg.
	(em_folder_selection_run_dialog_uri): Same.
	(em_select_folder): Here too.

2003-11-13  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-component.c (mail_component_get_tree_model): Use
	em_folder_tree_get_model() since an emft is not a GtkTreeView.

	* em-folder-tree.c (em_folder_tree_get_model): New function to get
	the tree model.

2003-11-13  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-selection.c: Rewritten to use EMFolderTRee.

	* mail-vfolder.c (vfolder_load_storage): Updated for function name
	changes in mail-component.c

	* mail-offline-handler.c: Updated for function name changes in
	mail-component.c

	* mail-account-gui.c (add_new_store): Fixed to not use EStorage.
	(mail_account_gui_save): Updated for function name changes.

	* em-account-prefs.c (account_delete_clicked): Updated for
	function name changes.
	(account_able_clicked): Same.
	(account_able_toggled): Same.

	* mail-component.c: Renamed mail_component_*storage*() functions
	to mail_component_*store*() since we are no longer dealing with
	storages, but instead with CamelStore's.
	(create_view_widget): If the user selects a store node, don't try
	to open it as a folder.

2003-11-13  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (impl_sendAndReceive): New, implementation for
	Evolution.Component.sendAndReceive.
	(mail_component_class_init): Install.

2003-11-13  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (context_rule_removed): Modified to not use
	EStorage* functions. I don't even think it *needs* to remove the
	folder from the mail-component, the mail-component should just
	pick it up automagically via CamelStore events.

	* em-folder-tree.[c,h]: New folder-tree widget that replaces the
	shell's folder-tree widget.

	* em-folder-tree-model.[c,h]: New source files subclassing
	GtkTreeStore for handling the mess that is drag&drop.

	* em-folder-selection-button.c: Ported to use EMFolderTree.

	* em-folder-selection.c: Ported to use EMFolderTree.

	* em-folder-selector.c: Ported to use EMFolderTree.

	* mail-component.c: Ported to use EMFolderTree.

	* mail-offline-handler.c (storage_go_online): Updated to not pass
	a storage argument.

	* mail-folder-cache.c: Removed storage stuff.

	* mail-send-recv.c (receive_update_got_store): Don't do EStorage*
	stuff anymore.

2003-11-13  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (impl__get_userCreatableItems): New,
	implementation for the Component.userCreatableItems attribute.
	(impl_requestCreateItem): New, implementation for the
	Component.requestCreateItem() method.
	(mail_component_class_init): Install.

2003-11-13  Radek Doulik  <rodo@ximian.com>

	* em-junk-filter.c (em_junk_sa_is_available): new helper function,
	use it before any call to spamassassin, spamc and sa-learn
	(em_junk_sa_test_spamd): first test if spamassassin is available
	(em_junk_sa_test_spamd): rename em_junk_sa_spamd_tested to
	em_junk_sa_tested, always set em_junk_sa_tested

	* mail-folder-cache.c (folder_changed): don't call
	CAMEL_IS_VJUNK_FOLDER, it was added by mistake

2003-11-13  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (em_format_html_add_pobject): use malloc0 for
	the pobject memory.

2003-11-12  Not Zed  <NotZed@Ximian.com>

	* mail-account-gui.c (smime_sign_key_select)
	(smime_encrypt_key_select, smime_encrypt_key_selected)
	(smime_sign_key_selected): implement the key selector popup using
	e-cert-selector.

2003-11-11  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (efh_application_xpkcs7mime): output icons of
	the status.
	(em_format_html_add_pobject): Changed to take a size specificier,
	return the pobject, and re-ordered args to be more consistent with
	puri stuff.
	(em_format_html_remove_pobject): handle the free callback if set.

	* em-format.c (emf_application_xpkcs7mime): moved this to
	em-format-html since it needs to do icon stuff.

	* mail-security.glade: new glade file for security related stuff.

	* mail-config.glade: removed the message security dialogue, it
	gets opened automatically by the config code :(

2003-11-10  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Set an
	"evolution:component_alias" property with a value of "mail".

2003-11-10  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (em_format_html_multipart_signed_sign): changed
	for cipher context api changes.
	* em-format.c (emf_multipart_signed): ditto.

2003-11-07  Not Zed  <NotZed@Ximian.com>

	* mail-config.glade: added security_information_dialog (probably
	temporarily in this file).

	* em-format.c (em_format_is_attachment): also treat pkcs7-mime as
	non-attachment.
	(emf_application_xpkcs7mime): no longer need to worry about
	scanning the part.

2003-11-07  Dan Winship  <danw@ximian.com>

	* message-list.c: Don't #include e-name-western.h, since the code
	that uses it is commented out, and we want to remove the local
	copy, but we don't want to make the mailer depend on the e-d-s
	copy if it's not even going to be using it.

2003-11-07  JP Rosevear <jpr@ximian.com>

	* Makefile.am: build the marshall files right at the beginning

2003-11-11  Not Zed  <NotZed@Ximian.com>

	* mail-security.glade: new glade file for security related stuff.

	* mail-config.glade: removed the message security dialogue, it
	gets opened automatically by the config code :(

2003-11-10  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Set an
	"evolution:component_alias" property with a value of "mail".

2003-11-10  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (em_format_html_multipart_signed_sign): changed
	for cipher context api changes.
	* em-format.c (emf_multipart_signed): ditto.

2003-11-07  Not Zed  <NotZed@Ximian.com>

	* mail-config.glade: added security_information_dialog (probably
	temporarily in this file).

	* em-format.c (em_format_is_attachment): also treat pkcs7-mime as
	non-attachment.
	(emf_application_xpkcs7mime): no longer need to worry about
	scanning the part.

2003-11-07  Dan Winship  <danw@ximian.com>

	* message-list.c: Don't #include e-name-western.h, since the code
	that uses it is commented out, and we want to remove the local
	copy, but we don't want to make the mailer depend on the e-d-s
	copy if it's not even going to be using it.

2003-11-07  JP Rosevear <jpr@ximian.com>

	* Makefile.am: Make sure the marshal files are listed above other
	sources

2003-11-06  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.c (em_migrate_filter_file): Call em_migrate_uri()
	instead of em_uri_from_camel().
	(em_migrate_uri): Special-case file: uri's by converting them into
	email://local@local/ uri's since these folders will have been
	migrated to the newer mbox tree structure.

2003-11-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (mail_vfolder_delete_uri): User vfolder rules
	should be in ${evolution_dir}/mail/vfolders.xml rather than
	${evolution_dir}/vfolders.xml
	(mail_vfolder_rename_uri): Same.
	(store_folder_deleted): Here too.
	(store_folder_renamed): And here.
	(vfolder_load_storage): Again here.
	(vfolder_editor_response): Same.
	(edit_rule_response): And here.
	(new_rule_clicked): Here too.

	* mail-session.c (main_get_filter_driver): User filter rules
	should be in ${evolution_dir}/mail/filters.xml rather than
	${evolution_dir}/filters.xml

	* mail-autofilter.c (filter_gui_add_from_message): Same.
	(mail_filter_rename_uri): And here.
	(mail_filter_delete_uri): Here too.

	* em-utils.c (filter_editor_response): Again here.
	(em_utils_edit_filters): Same.

	* em-migrate.c (em_migrate_filter_file): Same (also for
	vfolders.xml)

2003-11-05  Jeffrey Stedfast  <fejj@ximian.com>

	* em-migrate.[c,h]: New source files to migrate from the old mail
	directory to the new mail directory.

	* mail-component.c (mail_component_init): Changed to use
	~/.evolution and added code to migrate the old mail folders over
	if ~/.evolution/mail does not yet exist.

2003-11-03  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Use "evolution2:config_item"
	properties for the config item instead of "evolution:config_item"
	ones.

2003-11-01  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c: setup filter-on-thread and vfolder-on-thread.

	* mail-autofilter.c (rule_from_message): handle AUTO_THREAD
	(rule_match_thread): new function to setup a filter on a msgid

2003-10-31  Not Zed  <NotZed@Ximian.com>

	* mail-config.glade: Rearranged smime config slightly, and added
	encrypt key preference.

	* mail-account-gui.c (mail_account_gui_save,
	mail_account_gui_new): enable smime always if have_nss.  Added new
	options in glade file and handle changed names.
	(smime_changed, smime_sign_key_select, smime_sign_key_clear)
	(smime_encrypt_key_select, smime_encrypt_key_clear): Add a bunch
	of mostly dummy UI behaviour management stuff.

2003-10-30  Not Zed  <NotZed@Ximian.com>

	* em-format.c (em_format_is_inline): show application/x-pkcs7-mime
	inline always by default.

2003-10-30  Not Zed  <NotZed@Ximian.com>

	* em-format.c (emf_multipart_signed): handle
	application/x-pkcs7-signature.

2003-10-29  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (em_format_html_multipart_signed_sign): handle
	application/x-pkcs7-signature.

	* em-format.c (emf_application_xpkcs7mime): Handle
	application/x-pkcs7-mime.

2003-10-29  Jeffrey Stedfast  <fejj@ximian.com>

	* em-account-prefs.h: Changed the OAFIID.

	* em-composer-prefs.h: Changed the OAFIID.

	* em-mailer-prefs.h: Changed the OAFIID.

	* GNOME_Evolution_Mail.server.in.in: Changed OAFIIDs for the prefs
	controls.

2003-10-29  Jeffrey Stedfast  <fejj@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Nuked the MailConfig
	interface stuff.

	* Mailer.idl: Removed. None of the interfaces are needed/used
	anymore.

	* folder-info.[c,h]: Removed. The summary was the only thing that
	needed/used this code and it has been nuked into oblivion, so
	these interfaces are no longer needed.

	* mail-config.c: Removed old crufty CORBA interface snot that is
	no longer needed or used.

2003-10-27  Jeffrey Stedfast  <fejj@ximian.com>

	* Fixes bug #49816

	* em-popup.c (emp_part_popup_reply_sender): No need to pass a
	parent window arg anymore.
	(emp_part_popup_reply_list): Same.
	(emp_part_popup_reply_all): Here too.
	(emp_part_popup_forward): Same.
	(emp_uri_popup_address_send): Here too.

	* em-folder-browser.c (emfb_mail_compose): No need to pass a
	parent window arg anymore.
	(emfb_mail_post): Same.

	* em-folder-view.c (emfv_message_reply): Don't pass a parent
	window argument anymore.
	(emfv_popup_forward): Same.
	(emfv_popup_resend): Same here.
	(em_folder_view_open_selected): Same.
	(emfv_message_forward_attached): Here too.
	(emfv_message_forward_inline): And here.
	(emfv_message_forward_quoted): Same.
	(emfv_message_redirect): Here too.
	(emfv_message_post_reply): And here.
	(emfv_format_link_clicked): ANd finally here.

	* em-utils.c (create_new_composer): Don't set_transient_for()
	anymore.
	(em_utils_compose_new_message): No longer takes a parent window
	argument.
	(em_utils_forward_attached): No longer takes a parent window arg.
	(em_utils_forward_inline): Same.
	(em_utils_forward_quoted): Same.
	(em_utils_forward_message): Same.
	(em_utils_forward_messages): Here too.
	(redirect_get_composer): Don't set_transient_for() here either.
	(em_utils_redirect_message): No longer takes a parent window arg.
	(em_utils_redirect_message_by_uid): Same.
	(reply_get_composer): Don't set_transient_for() here.
	(em_utils_reply_to_message): No longer takes a parent window arg.
	(em_utils_reply_to_message_by_uid): Same.
	(post_reply_to_message): Don't set_transient_for() here.
	(em_utils_post_reply_to_message_by_uid): No longer takes a parent
	window arg.
	(em_utils_compose_new_message_with_mailto): Don't
	set_transient_for() here.
	(em_utils_post_to_url): Same.
	(em_utils_edit_message): No longer takes a parent window arg.
	(em_utils_edit_messages): Same.

2003-10-24  Jeffrey Stedfast  <fejj@ximian.com>

	* em-account-prefs.[c,h]: Re-Namespaced mail-accounts.c

	* em-composer-prefs.[c,h]: Re-Namespaced mail-composer-prefs.c

	* em-mailer-prefs.[c,h]: Re-Namespaced mail-preferences.c

	* mail-accounts.[c,h]: Removed.

	* mail-composer-prefs.[c,h]: Removed.

	* mail-preferences.[c,h]: Removed.

	* mail-account-editor.c: Updated.

	* mail-account-gui.c: Updated.

	* mail-config-factory.c: Updated.

	* mail-component-factory.c: Updated.

2003-10-22  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Add an
	"evolution:button_icon" attribute.

2003-10-22  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Add an
	"evolution:button_sort_order" attribute.

2003-10-22  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-component.c (parse_uid_list): Removed, use
	em_utils_selection_get_uidlist() instead.
	(drop_uid_list): Use em_utils_selection_get_uidlist() to parse the
	x-uid-list selection data and use mail_tool_uri_to_folder()
	directly since we have the uri (originally we expected the first
	component of the selection data to be the e-storage-set-view
	folder path rather than the uri).
	(folder_receive_drop_cb): Call gtk_drag_finish() here.

	* message-list.c: s/x-evolution-message/x-uid-list/

	* em-utils.c: Same.

2003-10-22  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (impl_createControls): Use
	e_storage_browser_peek_widget_scrolled() to retrieve the scrolled
	window that the EStorageSetView is contained in.

2003-10-22  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Add an
	"evolution:button_label" attribute to the Component for use in the
	shell.

2003-10-22  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (em_copy_folders): handle destination of ""
	properly.
	(emc_popup_copy_folder_selected): handle url->path properly, strip
	leading /.
	(em_copy_folders): if we just created a new folder on a
	subscribable store, subscribe to it.
	(em_copy_folders): handle nonselectable folders specially.

2003-10-21  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-component.c (drag_text_uri_list, folder_dragged_cb)
	(drop_uid_list, drop_folder, import_message_rfc822)
	(drop_message_rfc822, drop_text_uri_list, folder_receive_drop_cb):
	New functions to handle drag & drop to/from the folder tree.
	(impl_createControls): Setup drag & drop support.

	* em-format.c (emf_multipart_mixed): Put an <hr> between parts of
	a multipart.

2003-10-21  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (emc_popup_properties): implement.
	(emc_popup_properties_got_folder): builds dynamic
	folder-properties dialogue.
	(emc_popup_properties_response): set the properties on the folder
	on an ok response.
	(emc_popup_properties_free): free the properties working data.

	* mail-folder-cache.c (unset_folder_info): unhook from the right
	function for message_changed.

2003-10-20  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (emc_popup_new_folder): pass the right object
	to set_selected().  Fixes a new real bug.  Undid reformatting.

2003-10-17  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-component.c: General compile fixes.
	(emc_popup_new_folder): Fixed to not shadow a parameter. Fixes a
	real bug.

	* mail-component.h: Added some prototypes.

2003-10-13  Not Zed  <NotZed@Ximian.com>

	* em-popup.c (em_popup_create_menu_once): only hookup target free
	if we have a target set.

	* mail-component.c (load_accounts): removed debug i accidentally
	left in.
	(emc_tree_right_click): handle right-click context menu, using an
	EMPopup table.
	(emc_popup_*): setup empty popup handlers.

2003-10-13  Not Zed  <NotZed@Ximian.com>

	* em-folder-selection.c (em_select_folder): asynchornous folder
	selection call.
	(emfs_folder_selected): callback for folder selected.

	* em-folder-view.c (emfv_popup_move): implement.
	(emfv_popup_copy): "
	(emfv_popup_move_cb): async folder select callback to run it.

2003-10-10  Not Zed  <NotZed@Ximian.com>

	* mail-account-gui.c
	(mail_account_gui_folder_selector_button_new): use
	em_folder_selection_button.
	(mail_account_gui_new): "
	(folder_selected): "

	* em-folder-selection-button.c: Make this use camel uri's rather
	than camelfolders.
	(set_selection): removed, redundant.
	(impl_dispose): removed, not needed.

	* em-folder-selection-button.h: change the selected signal not to
	actually return the selection, which must get retrieved later.

	* mail-component.c (em_uri_from_camel): create an evo mail uri
	from a camel one.
	(em_uri_to_camel): the reverse.

	* mail-signature-editor.c (mail_signature_editor): up the version
	of the gtkhtml editor.

2003-10-09  Not Zed  <NotZed@Ximian.com>

	* em-folder-selection-button.c (set_selection): always set
	selected_folder, otherwise we don't unset it properly.

	* em-folder-selection.c (em_folder_selection_run_dialog): fix a
	small memleak.
	(em_folder_selection_run_dialog_uri): do the same as run_dialog
	but take, and return physical uri's.

	* mail-component-factory.c (factory): removed some fixme's, and
	re-hookedup the composer.

2003-10-09  Frederic Crozat  <fcrozat@mandrakesoft.com>

	* em-icon-stream.c (emis_sync_close): Use
	gnome-thumbnail_scale_down_pixbuf if available, for better
	performance.

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

	* em-folder-view.c: Add a hide_mask to the
	create-rule-from-message bars so that we don't segfault when we
	right click with a multi-selection.

2003-10-08  Chris Toshok  <toshok@ximian.com>

	* em-utils.c (em_utils_camel_address_to_destination): EDestination
	=> EABDestination, and e_destination => eab_destination.
	(reply_get_composer): same.
	(post_reply_to_message): same.

	* em-composer-utils.c (ask_confirm_for_unwanted_html_mail)
	EDestination => EABDestination, and e_destination =>
	eab_destination.
	(composer_get_message):same.

2003-10-08  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (mail_component_peek): setup vfolders once we
	hve the component, since its setup will call mail_component_peek,
	fun recursion.

2003-10-08  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (setup_local_folder): removed.
	(setup_local_store): setup various needed globals properly.
	(setup_account_storages): renamed to load_accounts.
	(go_online): turn on interactivity as well as onlinedness.

	* GNOME_Evolution_Mail.server.in.in: point the preferences pages
	to the right factory.

2003-10-07  Not Zed  <NotZed@Ximian.com>

	* mail-component.[ch]: Fix copyrights.

2003-10-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config-druid.c (identity_prepare): Fixed.

	* mail-ops.c (fetch_mail_fetch): Always save the uid cache no
	matter what.

2003-10-03  Frederic Crozat  <fcrozat@mandrakesoft.com>

	* mail-config-druid.c (identity_prepare), (config_wizard_new):
	Convert real name to UTF-8 if needed.

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

	* em-folder-browser.c (emfb_set_folder): Disable the selection of
	the first unread message for now. This is actually annoying the
	fuck out of me, Radek, and a few other people.

2003-10-02  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (add_storage): Add the storage to the hash
	after we've initialised it.
	(mail_component_evomail_uri_from_folder): hardcode "local" account
	pseudo-id for local folders.
	(mail_component_get_folder_from_evomail_uri): handle the "local"
	account case.

2003-10-02  Not Zed  <NotZed@Ximian.com>

	* mail-component.c (setup_local_store): use mbox:/path rather than
	mbox:///path - the mbox code is 'wrong', but this is easier to
	fix.  fixes local unread counts.  maybe the provider url-compare
	should address this too.

2003-10-02  Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>

	* mail-config-druid.c: Fix for 40917 "Backspace shouldn't
	highlight the whole remaining string in Setup Assistant".
	(identity_changed): Removed repeated focussing per keystroke.
	functions
	(source_changed): Same.
	(transport_changed): Here too.
	(management_changed): And here.
	(identity_prepare): Removed the initial highlighting for Full
	Name, also the unneeded intial grab_focus.

2003-10-02  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (efh_format_timeout): zero out last_part if
	we're clearing.  Uh, this fixes, but shouldn't, part of #49034.
	The problem is the 'last part' logic is based on the address,
	which can quite easily be repeated for different messages.

	* em-folder-view.c (emfv_list_message_selected): reverted jeff's
	patch for #48618, use a much simpler method.

	* em-message-browser.c (emmb_destroy): hook onto destroy handler,
	we need to destroy the messagelist ourselves, since we dont attach
	it to any parent window.

2003-10-01  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (efh_init): turn off blocking writes.
	(efh_format_timeout): don't do a htmlbegin on the page yet, it'll
	be handled by em-html-stream when it has data, to reduce flicker.
	(efh_format_do): close the main gtkhtml stream as soon as we're
	done writing the body.  any sub-jobs should be using frames etc.
	(efh_text_plain): dont write a table around the text, try to
	reduce flickering.  layout may be out now though.

	* em-html-stream.c (emhs_sync_write): if we have no html_stream
	yet, begin a new one.

2003-09-30  Rodney Dawes  <dobey@ximian.com>

	* em-format-html-print.c: Use "Sans Regular" instead of "Helvetica"
	Fixes bug #47878
	
2003-09-30  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (efh_init): remove gconf stuff.
	(em_format_html_set_xmailer_mask): new method to set the xmailer mask.

	* em-folder-view.c (emfv_display_keys[]): Added charset key to
	monitor/retrieve, and xmailer_mask.
	(emfv_setting_notify): Monitor charset setting, pass onto the
	formatter, as well as xmailer_mask.

	* mail-preferences.c (mail_preferences_construct): use the new
	charset key.
	(mail_preferences_apply): use the new charset key.

	* evolution-mail.schemas: Moved the mail/format/charset to
	mail/display/charset.  1. it makes more sense, and 2. it makes
	notification update easier in em-folder-view.c

	* em-format.c (emf_init): remove the gconf charset stuff, for bug
	#48791, and also actually fixes the fixme that jeff thought he
	fixed.
	(em_format_format_text): use default charset as fallback.
	(em_format_set_default_charset): New method to set the default charset.
	(gconf_charset_changed): removed.

2003-09-29  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format.c (emf_init): Oops, put the arguments in the right order.

2003-09-29  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c: New member local_store in
	MailComponentPrivate.
	(impl_dispose): Unref.
	(mail_component_load_storage_by_uri): Return the CamelStore.
	(setup_local_folder): New.
	(setup_local_store): New.
	(mail_component_init): Call it.
	(mail_component_peek_storage_set): New.
	(mail_component_get_folder_from_evomail_uri): New.
	(mail_component_evomail_uri_from_folder): New.

	* em-folder-selection-button.c: New.
	* em-folder-selection-button.h: New.

	* em-folder-selection.c: New.
	* em-folder-selection.h: New.

	* em-marshal.list: Add NONE:POINTER.

2003-09-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-account-gui.c (mail_account_gui_save): Allow any file: uri
	to point to a sent or drafts folder.

2003-09-25  Rodney Dawes  <dobey@ximian.com>

	* mail-send-recv.c: Make the dialog more HIG-compliant by fixing
	widget alignment/spacing issues, and removing separators

2003-09-24  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-preferences.c (mail_preferences_construct): Same as below.

	* mail-composer-prefs.c (mail_composer_prefs_construct): gconf can
	return empty string if the charset has not been set, so if the
	charset string is empty, default the charset to the user's locale
	charset. Partial fix for bug #47638.

2003-09-23  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (add_storage): Remove unused arg "uri".
	(mail_component_add_store): Likewise.
	(add_storage): Don't set the "Connecting..." node.
	(mail_component_init): Set up local store at
	~/.evolution/mail/local.

	* evolution-mbox-upgrade.c (get_local_store): Remove a double
	xmlFree() that was causing it to crash.


2003-09-23  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (add_storage): Note the new store.

	* mail-component-factory.c: Don't include "mail-callbacks.h"
	anymore.

	* em-format-html.c (em_format_html_get_type): Get the base
	directory with mail_component_peek_base_directory().
	* em-utils.c (filter_editor_response): Likewise.
	(em_utils_edit_filters): Likewise.

	* em-folder-browser.c (emfb_init): Get the search context through
	mail_component_peek_search_context().

2003-09-23  Jeffrey Stedfast  <fejj@ximian.com>

	* evolution-mbox-upgrade.c (get_local_store): Don't xmlFree (name)
	until after we've g_strdup'd it.
	(em_migrate_dir): If the metadata file doesn't exist, don't even
	bother trying subfolers (the shell just ignores them so we should
	too).

2003-09-23  Jeffrey Stedfast  <fejj@ximian.com>

	Fix for bug #48791 (and also fixes a FIXME)

	* em-format.c (emf_init): Setup a gconf listener for changes to
	the charset setting.
	(gconf_charset_changed): Update the cached gconf charset value.
	(emf_finalise): Free the EMFormatPrivate data, unref the gconf
	client, disconnect the charset notify id, and free the cached
	gconf charset value.
	(em_format_format_text): Use the cached gconf charset value.

2003-09-22  Not Zed  <NotZed@Ximian.com>

	** See bug #32996
	
	* mail-folder-cache.c (real_flush_updates): don't just pass TRUE
	to the 'can work offline' parameter of new shell folder.

	** See bug #39410
	
	* mail-ops.c (prep_offline_do): sync all messages, not just
	unread or flagged ones.

2003-09-22  Not Zed  <NotZed@Ximian.com>

	* em-popup.c (emp_uri_popup_link_copy): removed, moved to
	em-folder-view, for now, it has access to an invisible.

	* em-folder-view.c (emfv_setting_notify): honour the load_http
	setting, at least the all setting.
	(emfv_format_popup_event): setup the popup menu item for copy link
	location here.

2003-09-22  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-preferences.c (mail_preferences_construct): Connect to
	"value-changed" rather than "changed" for spin buttons.

2003-09-21  Not Zed  <NotZed@Ximian.com>

	* mail-session.c (ms_thread_msg_new): implement, we hook into the
	mail progress reporting stuff by overriding the CamelOperation
	member with one from a dummy mail_msg.
	(ms_thread_msg_free): handle freeing.

	* mail-mt.c (mail_msg_free): mute the camel-operaiton when we free
	it so we no longer get updates.

2003-09-19  Jeffrey Stedfast  <fejj@ximian.com>

	* em-message-browser.c (emmb_set_message): Set the window title to
	be that of the message subject. Fixes bug #48617.

2003-09-19  Jeffrey Stedfast  <fejj@ximian.com>

	Fix for bug #48618.

	* em-folder-view.c (emfv_list_message_selected): See if we have
	already loaded the message uid that has just been selected, if so
	- don't bother re-loading it.
	(emfv_list_done_message_selected): Update loaded_uid and
	loading_uid.

2003-09-18  Radek Doulik  <rodo@ximian.com>

	* em-format-html.c (efh_init): use gtkhtml's blocking

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

	* em-inline-filter.c: updated for CamelTransferEncoding namespace
	changes

	* em-inline-filter.h: updated for CamelTransferEncoding namespace
	changes

	* mail-ops.c: updated for CamelTransferEncoding namespace changes

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

	* component-factory.c: updated for camel namespace changes

	* em-folder-view.c: updated for camel namespace changes

	* em-format-html-display.c: updated for camel namespace changes

	* em-format-html-quote.c: updated for camel namespace changes

	* em-format.c: updated for camel namespace changes

	* em-popup.c: updated for camel namespace changes

	* em-utils.c: updated for camel namespace changes

	* mail-autofilter.c: updated for camel namespace changes

	* mail-ops.c: updated for camel namespace changes

	* mail-session.c: updated for camel namespace changes

	* message-list.c: updated for camel namespace changes

	* message-tag-followup.c: updated for camel namespace changes

	* importers/evolution-mbox-importer.c: updated for camel namespace
	changes

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

	* em-popup.c (emp_standard_menu_factory): Don't forget to
	initialise/increment 'i' when using it as an object id in the
	for-loop.

	* em-format.c (em_format_format_text): Initialise charset to NULL
	or it may be used uninitialised. Also include
	gnome-vfs-mime-handlers.h for gnome_vfs_mime_type_get_description().

	* Makefile.am: Added $(MARSHALL_GENERATED) to $(BUILT_SOURCES) so
	that em-marshal.[c,h] were autogenerated.

2003-09-17  Not Zed  <NotZed@Ximian.com>

	* folder-browser.c, folder-browser.h, folder-browser-ui.c
	folder-browser-ui.h, mail-callbacks.c, mail-callbacks.h
	mail-display.c, mail-display.h, mail-display-stream.c
	mail-display-stream.h, mail-format.c, mail-format.h
	mail-identify.c, mail-search.c, mail-search.h message-browser.c,
	message-browser.h, subscribe-dialog.c subscribe-dialog.h,
	mail-font-prefs.c, mail-font-prefs.h: cvs removed.

	* Makefile.am: Removed mail-font-prefs.[ch], hasn't been built for
	ages.

	* em-*.c: killed a bunch of printfs.

	* em-format-html-display.c (efhd_html_button_press_event): update
	for html object api chagnes.

	** Merge in mail-refactor-2 branch.

2003-09-17  Jeffrey Stedfast  <fejj@ximian.com>

	* evolution-mbox-upgrade.c: New source file to migrate from the
	old mbox structure to the new mbox structure.

2003-09-08  Ettore Perazzoli  <ettore@ximian.com>

	* mail-folder-cache.c (mail_note_store): Allow NULL storage in
	precondition.

	* mail-component.c (mail_component_init): Remove debugging
	message.

2003-08-22  Not Zed  <NotZed@Ximian.com>

	* mail-format.c (write_date): translate the local time format.

2003-08-20  David Woodhouse  <dwmw2@infradead.org>

	* mail-format.c (write_date): Use e_utf8_strftime() to generate
	localised time; avoid gratuitous extra translation and array of
	day names, and the autoconf magic which made Not Zed dislike the
	inclusion of the timezone name.

2003-08-18  Ettore Perazzoli  <ettore@ximian.com>

	* GNOME_Evolution_Mail.server.in.in: Rename
	GNOME_Evolution_Mail_Component2 to
	GNOME_Evolution_Mail_Component_2 and GNOME_Evolution_Mail_Factory2
	to GNOME_Evolution_Mail_Factory_2.
	* mail-component-factory.c: Update accordingly.

2003-08-18  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (main_get_filter_driver): Removed the
	new-mail-notification mess.

	* mail-folder-cache.c (notify_idle_cb): New idle callback to alert
	the user about new mail.
	(notify_type_changed): New function to intercept user changes to
	his/her notification settings changes.
	(real_flush_updates): Initialise new mail notification if not yet
	initialised and setup an idle callback if none is already set.
	(update_1folder): Now takes an additional argument `new' which
	states whether or not the fodler got any new mail so that we may
	handle notify the user (if needed).
	(folder_changed): Pass in the number of new messages received.

2003-08-19  Not Zed  <NotZed@Ximian.com>

	* mail-callbacks.c (mail_generate_reply): Added a comment for
	translators.

2003-08-19  David Woodhouse  <dwmw2@infradead.org>

	* mail-callbacks.c (mail_generate_reply): Add a timezone offset to
	the attribution string.

2003-08-19  Not Zed  <NotZed@Ximian.com>

	* mail-format.c (write_date): Added translation for day and
	localtime strings.  Also removed the tz_zone stuff, and just use
	'localtime' always.

2003-08-15  David Woodhouse  <dwmw2@infradead.org>

	* mail-format.c (write_date): Show date in localtime too.

2003-08-19  Harry Lu  <harry.lu@sun.com>

	** For #45348

	* mail-display.c (mail_display_render): Change "%P" to "%p" so 
	that strftime() can work under solaris.

2003-08-14  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-ops.c (mail_send_message): Don't abort at the first failure
	after sending (filtering, appending to Sent, syncing). Instead,
	keep a running tab of exceptions and then set a culmulative
	exception at the end to report to our caller. Also, if we fail to
	append to the account Sent folder, try again with the local Sent
	folder. Fixes bug #46512.

2003-08-13  Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
	
	* e-searching-tokenizer.c (searcher_next_token): Fix for 45818 (
	i18n mail messages search only produces '[?]'). Now multibyte
	character selection works correctly. But due to associated gtkhtml
	bug, the find button functionallity for multibyte characters is
	broken.

2003-08-12  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-tools.h: Removed unused function prototype.

2003-08-11  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (remove_timeout): Removed.
	(register_timeout): Removed.

2003-08-09  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (storage_go_online): Pass NULL for the
	operation pointer to mail_note_store(), to sync with Michael's
	changes.

2003-08-05  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (handle_multipart_encrypted): Updated for
	CamelMimePart::content_type changes.

	* mail-ops.c (save_part_save): Use
	camel_data_wrapper_decode_to_stream() here.

	* mail-display.c (drag_data_get_cb): Updated for
	CamelMimePart::content_type changes.
	(do_attachment_header): Same.

2003-07-31  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (mail_format_raw_message): Updated to pass FALSE
	as the 'decode' param to
	mail_format_data_wrapper_write_to_stream().
	(mail_format_data_wrapper_write_to_stream): Now takes a boolean
	arg telling whether to decode or not. Also reworked the charset
	logic now that camel doesn't handle this for us any longer.
	(mail_format_get_data_wrapper_text): Updated.
	(handle_text_plain): Same.
	(handle_text_enriched): Here too.

	* mail-display.c (do_attachment_header): Call decode_to_stream
	here instead of write_to_stream.
	(do_external_viewer): Same.
	(on_url_requested): Same. Also updated for
	mail_format_data_wrapper_write_to_stream().
	(try_part_urls): Call decode_to_stream.
	(drag_data_get_cb): Same.

2003-08-05  Not Zed  <NotZed@Ximian.com>

	** See bug #32732

	* message-list.c (mail_regen_list): use thread_new.

	* mail-local.c (reconfigure_response): use thread_new.

	* mail-display.c (stream_write_or_redisplay_when_loaded): use
	thread_new.

	* mail-config.c (mail_config_check_service): use thread_new rather
	than queue.

	* mail-callbacks.c (view_msg): change to use mail_get_messages(),
	fixes FIXME.
	(do_view_messages): handle get_messages callback.
	(do_view_message): removed.

	* mail-ops.c (mail_get_folderinfo): Use a new thread thread
	semantic.
	(mail_save_part): "
	(mail_store_set_offline): "
	(mail_sync_folder): use queued_slow thread queue.
	(mail_expunge_folder): "
	(mail_empty_trash): "

	** See bug #47224.  Hook onto clicked rather than button_pressed,
	so that dnd works.
	
	* mail-display.c (inline_toggle): toggle a part inline.
	(button_press): change back to only handle button clicked events,
	renamed to inline_button_clicked.
	(do_attachment_header): hook onto clicked rather than
	button_press_event, and move key_press_event to
	inline_button_pressed.
	(do_signature): Same.
	(inline_button_pressed): handle inline button key press event
	explicitly.

2003-07-29  Not Zed  <NotZed@Ximian.com>

	* mail-folder-cache.c (mail_note_store): add a CamelOperation for
	overriding status handler.

	* mail-send-recv.c (receive_update_got_store): Pass our own cancel
	handle to get_folderinfo and mail_note_store.
	(mail_send_receive, mail_receive_uri): Same for get_store.

	* mail-ops.c (mail_get_store, mail_get_folderinfo): Add a
	CamelOperation argument, for overriding the status handler.  Fixed
	most calles to pass NULL to use the default.

2003-09-15  Not Zed  <NotZed@Ximian.com>

	* em-folder-browser.c (emfb_activate): remove warning about folder
	not being loaded yet - it basically never is.

	* em-popup.c (emp_standard_menu_factory): dont setup any global
	select menu's yet.  they're all handled by folderview atm.

2003-09-11  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (efh_finalise, efh_format_timeout): Use a
	proper hash free func, otherwise it dont work.

2003-09-11  Not Zed  <NotZed@Ximian.com>

	* em-inline-filter.[ch]: A new class which implements an inline
	snooper via a mime filter, so it is fully streamable.  contents
	merely passes through the filter.

	* em-format-html.c (efh_finalise): free text substitute parts
	table.
	(efh_text_plain): transform a text part into a multipart, scanning
	for inline data.  Keep the multipart around for redraws.
	(efh_format_timeout): clear the text substitute parts table.

2003-09-10  Not Zed  <NotZed@Ximian.com>

	* em-format-html-display.c (efhd_init): hook onto realise so we
	get the real theme-applied style.
	(efhd_gtkhtml_realise): get the theme data for colour defaults.
	Tweak the colour selection to make it work better with dark
	themes.

	* em-format-quote.c (emfq_format_source): we need to implement
	this.
	(emfq_format_error): we need not to call parent, it doesn't
	implement it.

	* message-list.c (message_list_select_uid): don't emit
	changedhere, let it go through the table cursor change.

	* em-folder-browser.c (em_folder_browser_show_preview): use
	folderview.preview_active for this state.
	(em_folder_browser_show_preview): clear the current message when
	we turn off the message view, and load the current one when turn it on.

	* em-folder-view.c (emfv_destroy): zero out preview + list.
	(emfv_list_message_selected): check preview_active before doing
	anything.
	(emfv_edit_cut):
	(emfv_edit_copy): only run if preview active.

	* em-format-html.c (efh_format_do): output the proper html
	headers, etc.

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

	* mail-account-gui.c (mail_account_gui_save): Allow the user to
	select any fodler for his/her Drafts and Sent folders. Fixes bug
	#45412.

2003-09-09  Not Zed  <NotZed@Ximian.com>

	* em-utils.c (forward_non_attached): implement forward quoted.

	* em-format-quote.[ch]: New class, em-format-html-quote wont cut
	it.  Sigh.

	* em-format-html-quote.c (efhq_base_init): move type init stuff
	here.
	(efhq_complete): remove, this is a signal.
	(efhq_multipart_related): we need to override the base class, we
	don't want to output any attachment html.

	* em-format-html-print.c (efhp_base_init): move builtin type init
	to here.

	* em-format-html.c (efh_init): get xmailer mask from gconf (sigh).
	(efh_format_header): inmplement most of xmailer mask thing.
	rupert icon not done yet, probably needs to be done as part of
	em-format-html-display, sigh.
	(type_builtin_table[]): add image/svg to supported image formats.
	(efhd_base_init): move type init to here.
	(efh_text_enriched): write to the filtered_stream, not stream.

	* em-format.c (em_format_format_text): oops, actually use any
	supplied charset.
	(emf_base_init): move hashtable init into base_init, so we get a
	new copy for each derived class too.

	* mail-send-recv.c (build_dialogue): use an eclippedlabel for
	status.  Fixed all uses.

2003-09-08  Not Zed  <NotZed@Ximian.com>

	* em-format-html.h (EMFormatHTML): added a simple_headers option,
	only output headers in basic format.  Added hide_headers option,
	to disable all header output.

	* em-format-html-quote.c (efhq_format_message): blockquote the
	contnet, thats how you cite it!
	(efhq_init): turn on simple headers for html output.
	(efhq_format_message): output headers and part directly, bypassing
	parent format_message.
	(efhq_format_message): implement hide_headers.

	* em-format-html.c (efh_busy): implement busy.
	(efh_format_message): implement simple_headers option.
	(efh_format_text_header): implement simple_headers option.
	(efh_format_message): move the header formatting stuff into
	exported em_format_html_format_headers.
	(efh_format_message): only output headers if not hidden.

	* em-format.c (emf_busy): base implementation of a new virtual
	method, returns TRUE if the object is still busy
	rendering/downloading stuff.

	* em-utils.c (em_utils_message_to_html): renamed from
	em_utils_quote_message.  Also make sure the html conversion is
	complete before getting the data.
	(em_utils_part_to_html): similar, but for parts.
	(composer_set_body): put in David Woodhouse's timezone in
	attribution patch.
	(composer_set_body): we want to quote the part (content), we don't
	want message headers.
	(em_utils_message_to_html): add a 'show headers' argument.

	* folder-browser-factory.c (control_activate): removed.
	(control_deactivate): removed.

	* mail-identify.c: 
	* folder-browser.[ch], folder-browser-ui.[ch]: 
	* mail-callbacks.[ch], mail-search.[ch]:
	* mail-display.[ch], mail-format.[ch], mail-display-stream.[ch]:
	* message-browser.[ch]: Removed, fixed all users.

	* component-factory.c (factory): change callbacks to em_utils
	ones.
	(configure_folder_popup): comment out some of the reconfigure
	stuff.  Wont have it in 1.6?
	(handle_external_uri_cb): use em_utils stuff.
	(user_create_new_item_cb): "
	(owner_unset_cb): "

	* em-composer-utils.c (composer_send_cb): rename to
	em_utils_composer_send_cb, and export, sigh, needed for factory.
	(composer_save_draft_cb): Same.

2003-09-05  Not Zed  <NotZed@Ximian.com>

	* em-format.c (type_builtin_table[]): Add a fallback multipart/*
	for other types (e.g. multipart/report)
	(em_format_fallback_handler): fix some bad logic.

	* em-folder-browser.c: track the pane size if the user changes it.
	(emfb_set_folder): Added a bit of a mess that will select the
	first unread message the first time you visit a folder.
	(emfb_destroy): impelment.  clear up outstanding signal handlers.
	(emfb_list_built): Select the first unread message.  this isn't
	entirely reliable as yet, and not configurable at all.

	* em-format-html-display.c (em_format_html_display_set_animate)
	(em_format_html_display_set_caret_mode): guess? :)
	(efhd_attachment_button): dont desensitise the button, just dont
	hook onto it, otherwise it looks fugly.

	* em-folder-view.c (emfv_list_done_message_selected): dont lookup
	gconf values every time.  use g_timeout_add rather than
	gtk_timeout, remove fixme's.
	(emfv_setting_notify): listner for gconf changes, reflect
	internally.
	(emfv_setting_setup): setup listner for gconf, and read initial
	settings.
	(emfv_activate): use local copy of settings rather than snooping
	gconf.
	(emfv_caret_mode): propagate caret-mode to display

	* em-format-html-quote.c (efhq_format_message): remove gconf
	stuff, our parent already has citation colour.

	* em-format-html.c (efh_format_timeout): remove gconf stuff.
	(em_format_html_set_load_http, em_format_html_set_mark_citations):
	set options on formatter, re-renders if required.
	(type_builtin_table[]): text/* should go to text/plain, not
	text/enriched.

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

	* em-utils.c (confirm_expunge): rename it to emu_confirm_expunge
	and remove leading whitespace before function.
	(em_utils_expunge_folder): we want to expunge the folder, not
	empty the trash.  Jeff didn't even run this once ...

	* em-popup.c: Lots of new features, 'global' popup menu's on a
	per-selection type, via factories, popup selections (targets), a
	standard factory for many menu items.
	(emp_apps_open_in): duh, fix uri using logic
	(emp_standard_menu_factory): only add apps to app list if
	!requires_terminal.

	* em-format-html-display.c (efhd_open_in, efhd_popup_free_items):
	moved to em-popup.c
	(efhd_popup_save_attachment, efhd_popup_save_message) 
	(efhd_popup_reply_sender, efhd_popup_reply_list) 
	(efhd_popup_reply_all, efhd_popup_forward): (re)moved to em-popup.c
	(efhd_attachment_popup): use enew popu stuff.
	(efhd_attachment_button): Scale the icons for mime-type icons.

	* em-folder-view.c (em_folder_view_disable_mask): removed
	... moved to em-popup.
	(em_folder_view_get_popup_target): new method, get the selection
	target for the folder view.
	(emfv_html_popup_saveas, emfv_html_popup_link_open)
	(emfv_html_popup_link_copy, emfv_html_popup_address_send)
	(emfv_html_popup_address_add, emfv_format_popup_free_items): moved
	to em-popup.c
	(emfv_format_popup_event): use new popup stuff.
	(emfv_popup): use new popup stuff, but still just use all local
	menu's.

2003-09-03  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c (emfv_format_popup_event): implement, a popup
	menu for right-clicking on links and images.
	(emfv_html_popup_link_copy): implement.
	(emfv_init): setup an invisible for selection stuff.
	(emfv_destroy): free invisible

	* em-utils.c (em_utils_get_proxy_uri): utility to get the current
	system proxy setting.
	(emu_set_proxy): implementation.

	* em-camel-stream.[ch]: removed.

	* em-format-html.c (efh_url_requested, efh_format_timeout): use
	em_html_stream rather than em_camel_stream.
	(emfh_gethttp): set the system proxy on the new stream.
	(emfh_multipart_related_check): use puri rather than purin inside
	the loop - duh.
	(emfh_multipart_related_check): removed 'unrelated part' warning,
	they can be (and normally are) added by the callbacks.

	* em-format-html.h (EMFormatHTMLJob): s/estream/stream/

	* em-html-stream.[ch]: New subclass of emsyncstream, replacement
	for em-camel-stream.

2003-09-04  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-browser.c (emfb_folder_expunge): Call
	em_utils_expunge_folder instead.

	* em-utils.c (em_utils_expunge_folder): New function.
	(confirm_expunge): Make private.

2003-09-04  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-browser.c (emfb_folder_expunge): Confirm hat the user
	wants to expunge.
	(emfb_empty_trash): Implemented.

	* em-utils.c (em_utils_prompt_user): Make public (used to be
	e_question).
	(em_utils_confirm_expunge): New function to confirm that the user
	wants to expunge.
	(em_utils_empty_trash): New function to empty all Trash folders.

	* em-composer-utils.c: Get rid of e_question and use em-utils'
	em_utils_prompt_user() function instead.

	* em-format-html-quote.[c,h]: New formatter for quoting
	replies/forwards/etc.

	* em-utils.c (em_utils_quote_message): New function.
	(composer_set_body): Use the new em_utils_quote_message()
	function.
	(em_utils_temp_save_part): Only g_free mfilename if it was
	malloc'd.

	* mail-tools.c (mail_tool_quote_message): Removed.
	(mail_tool_forward_message): Removed.

2003-09-03  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format.c (em_format_class_remove_handler): New function to
	remove a mime-type handler from a class.

	* em-format-html.c (efh_init): Set the CITATION bit for the
	default html flags.

	* em-format-html-display.c: Fixed some compiler warnings by adding
	appropriate includes.
	(efhd_multipart_signed): Don't write "inlined signature...".

2003-09-03  Not Zed  <NotZed@Ximian.com>

	* em-icon-stream.[ch]: New subclass of emsyncstream, write camel
	stream one side, creates an icon on the other.

	* em-sync-stream.[ch]: New file, an abstract class for creating
	write-any-thread-act-gui-thread stuff.  'em-camel-stream' will
	subclass this.

	* em-format-html-display.c (efhd_attachment_button): setup a job
	to write out an icon if the type is an image type, otherwise try
	and get the icon directly.  no caching yet.  the system icons
	aren't scaled properly either.
	(efhd_write_icon_job): async job to write out image content.

2003-09-02  Not Zed  <NotZed@Ximian.com>

	* em-format-html.c (emfh_new_job): renamed to
	em_format_html_job_new and made public.
	(emfh_queue_job): renamed to em_format_html_job_queue, and made
	public.

	* em-format-html.h: Made EMFormatHTMLJob a public structure.

2003-09-02  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.h (struct _EMFolderView): track the uicomponent
	while we're activated.

	* em-message-browser.c (em_message_browser_window_new): kill
	warning.
	(emmb_init, emmb_finalise): kill printf

	* em-format-html.c (efh_format_header): Converted code from head
	from David Woodhouse <dwmw2@infradead.org>'s timezone display
	patch.
	(efh_format_text_header): support new flag, HEADER_HTML - header
	alredy in html format.

	* em-format-html-print.c (em_format_html_print_print): only ref
	print_config if != NULL.

	* em-folder-browser.c (emfb_tree_key_press): handle
	space/backspace in messagelist to scroll the message view.
	(emfb_create_view_menus): setup view menu's, this should probably
	live in message-list.
	(emfb_init): setup the folderbrowser enable map into the list.
	(emfb_enable_map): folder browser enable map

	* em-utils.c (em_utils_adjustment_page): new helper to scroll an
	adjustment up/down 1 page.

	* em-folder-view.c (emfv_list_double_click): implement, open
	window.
	(emfv_list_key_press): implement keybinding overrides.  Enhance
	delete key to undelete if everything is already deleted.
	(emfv_build_enable_mask): separate out enable mask creation.
	(emfv_popup): use above to get mask.
	(emfv_enable_menus): enable/sensitize menus, use the same disable
	mask system as used for the popups.
	(emfv_destroy): change to use g_source_remove on seen_id.
	(emfv_finalise): free up folders, clean up async event thing.
	(emfv_init): setup an async event handler
	(emfv_set_folder): handle hook/unhook of folder_changed events.
	(emfv_folder_changed): proxy folder changed to main thread, ignore
	the details of what changed.
	(emfv_gui_folder_changed): update the menu's to reflect any folder
	changes.
	(emfv_build_disable_mask): added CAN_THREADED.
	(em_folder_view_disable_mask): make public (rename from
	emfv_build_disable_mask).
	(emfv_enable_menus): changed to work on a list of arrays of
	enablers, so they can be subclassed.
	(emfv_init): add our enable map to the ui.
	(em_folder_view_disable_mask): added support for can hidden (there
	are hidden messages).

2003-09-01  Not Zed  <NotZed@Ximian.com>

	* em-popup.c: New, simple menu-merging popup menu implementation.
	NOTE: should be temporary, but needs something that has similar
	merging facilities.

	* em-folder-view.c (emfv_popup*): added popup callbacks, implement
	a popup menu, using em_popup.
	(emfv_message_*): replaced a whole bunch of one-line, or simple
	functions with macro's to map to the popup implementation.
	(emfv_tools_vfolder*, emfv_tools_filter*): map to popup
	equivalents.
	(emfv_init): drop printf

	* em-format-html-display.c (efhd_attachment_popup): use the
	em_popup stuff to build a dynamic menu.

	* em-utils.c (em_utils_temp_save_part): change assignment order ot
	kill warning.
	(emu_get_save_filesel): handle null/empty name by appending / to
	the filename.

2003-08-30  Not Zed  <NotZed@Ximian.com>

	* mail-search.glade: forgot to add this yesterday.

	* em-utils.h: don't include stuff we dont need to.

	* em-folder-view.c (emfv_message_forward): just call
	em_utils_forward_messages.
	
	* em-format-html-display.c (em_format_html_display_search):
	removed unused.
	(efhd_drag_data_get): cleanup, use em_utils_temp_save_part.
	(efhd_attachment_popup): quick hack, setup a bunch more menu
	items, for forwarding inline messages, hook up saving parts, and
	messages, and hook up the 'open in' menu.
	(efhd_open_in): implement.

	* em-utils.c (em_utils_save_message): Renamed to
	em_utils_save_part.
	(em_utils_filesel_prompt): removed, it just makes things more
	complex than having a single response handler.
	(em_utils_save_part): move dialog stuff here, it also creates a
	name based on the type of part its given.
	(emu_get_save_filesel): new method to create a fileselector with
	standard options.
	(emu_save_part_response): handle file selector response for save
	part.
	(can_save): renamed to emu_can_save
	(em_utils_save_messages): use get_save_filesel
	(emu_can_save): handle the path="" case
	(em_utils_save_part): Add a prompt argument.
	(filesel_ok_cb): removed.
	(emu_update_save_path): update the gconf save_dir setting.
	(em_utils_forward_messages): helper to forward using default
	style.
	(forward_non_attached): remove uids argument.
	(em_utils_forward_message): helper to forward a message using the
	default forward style.
	(forward_non_attached): removed folder argument.
	(em_utils_temp_save_part): helper to save a part to a temporary
	file, e.g. for dnd, app launch, etc.

2003-08-29  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c: set 'outgoing' properly.

	* em-folder-browser.c (emfb_tools_subscriptions): enforce a single
	instance of the subscribe editor.
	(emfb_subscribe_editor_destroy): clear subscribe editor handle.

2003-08-29  Not Zed  <NotZed@Ximian.com>

	* em-camel-stream.c (em_camel_stream_new): Added some optional
	logging code.
	(stream_close): and here.
	(stream_write): and here.

	* em-folder-browser.c (emfb_init): remove fixme about search bar,
	its there now.  also fixme's about dnd/selection, they are handled
	in lower-level widgets.
	(em_folder_browser_show_preview): dont exit if show preview set,
	but only if it hasn't changed.
	(emfb_view_hide_selected, emfb_view_show_all) 
	(emfb_view_hide_read): removed some spurious printfs.

	* Makefile.am (glade_DATA): Added mail-search.glade.  FIXME:
	should all glade files be merged into 1?

	* em-format-html-display.c (efhd_format_clone): remove search
	match count code from here - wont be finished rendering at this
	point anyway.
	(em_format_html_display_search): new api for running an
	interactive search popup.
	(efhd_update_matches, efhd_update_search)
	(efhd_search_entry_activate, efhd_search_case_toggled)
	(efhd_search_response): helpers/callbacks for search popup.
	(efhd_class_init): hook into complete signal on EMFormat.
	(efhd_complete): complete rendering handler, update match count.

	* em-folder-view.c: removed fixme about api's - yes, do need two
	set_folder api's.
	(emfv_edit_cut, emfv_edit_copy): removed printfs
	(emfv_edit_paste): removed commented call to html_paste, we never
	want to do that.

2003-08-29  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (emfv_message_mark_unread): If there is a
	mark-as-read timeout handler registered, unregister it here.
	(emfv_tools_filter_mlist): Implemented.
	(emfv_tools_filter_recipient): Implemented.
	(emfv_tools_filter_sender): Implemented.
	(emfv_tools_filter_subject): Implemented.
	(emfv_tools_vfolder_mlist): Implemented.
	(emfv_tools_vfolder_recipient): Implemented.
	(emfv_tools_vfolder_sender): Implemented.
	(emfv_tools_vfolder_subject): Implemented.

2003-08-28  Not Zed  <NotZed@Ximian.com>

	* em-folder-browser.c (emfb_search_menu_activated)
	(emfb_search_config_search, emfb_search_search_activated)
	(emfb_search__query_changed): Implement search-bar callbacks.
	(emfb_init): setup search bar.

2003-08-28  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c (emfv_message_reply): common reply code entry
	point, also implement simple reply-to-highlighted text (currently
	disabled).
	(emfv_activate): disable resend message on non-sent folders.
	(emfv_message_reply_all, emfv_message_reply_list)
	(emfv_message_reply_sender): use message_reply for common code.
	(em_folder_view_open_selected): in drafts or outbox, edit the
	message instead.
	(emfv_activate): force a sync on deactivate.

	* em-utils.c (em_utils_selection_get_mailbox): get mailbox
	(message/rfc822?) selection data.
	(em_utils_read_messages_from_stream): helper to move stuff from a
	mbox stream to a folder.
	(em_utils_folder_is_drafts, em_utils_folder_is_sent)
	(em_utils_folder_is_outbox): from folder browser helpers for
	customising the user experience.

	* message-list.c (message_list_construct): hook onto dnd stufd.
	(ml_tree_drag_data_get): implement drag sending.
	(ml_tree_drag_data_received): implement drag recieving.

	* em-format-html-display.c (efhd_drag_data_get): implemented.
	(efhd_drag_data_delete): implemented.
	(efhd_attachment_button): setup dnd callbacks.

2003-08-28  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (emfv_destroy): override the destroy method for
	GtkObject - unregister the mark-as-seen timeout if one is
	currently registered.
	(emfv_list_done_message_selected): Add the mark-as-seen timeout
	functionality here.
	(emfv_format_link_clicked): Implemented.

2003-08-27  Jeffrey Stedfast  <fejj@ximian.com>

	* em-utils.c (get_reply_list): Implemented.

2003-08-27  Not Zed  <NotZed@Ximian.com>

	* em-message-browser.c (emmb_activate): disable Edit->Paste menu
	always.

	* em-folder-browser.c (emfb_edit_paste): do a message-list paste,
	not a html one.
	(emfb_edit_cut, emfb_edit_copy, emfb_edit_paste): Moved to folder-view.

	* message-list.c (message_list_paste): trigger a paste action.
	(message_list_set_folder): added a uri argument, and save it
	internally, fixed all callers.
	(message_list_finalise): free the folder uri.

	* em-utils.c (em_utils_selection_set_mailbox): New helper to set
	the current selection as text in a berkely mailbox format.
	(em_utils_write_messages): helper to write stuff to a stream in
	mbox format.

2003-08-27  Not Zed  <NotZed@Ximian.com>

	* message-list.c (on_selection_changed_cmd): own/deown the primary
	selection when it changes.
	(message_list_init): init private data and invisible for
	selection.
	(message_list_destroy): free invisible.
	(message_list_finalise): free private data.
	(get_selected_cb): removed.
	(message_list_copy): new method to do copy and cut.  cut/copy to
	the clipboard.
	(ml_selection_clear_event): clear the right selection when
	requested.
	(message_list_has_primary_selection): helper to find out if the
	message-list has the selection.  is there a gtk way for this?

2003-08-26  Not Zed  <NotZed@Ximian.com>

	* mail-local.c (mlf_meta_set, mlf_meta_get): proxy meta-data stuff
	to subservient folder.

2003-08-23  Not Zed  <NotZed@Ximian.com>

	* em-folder-view.c (emfv_init): init preview here always.

2003-08-25  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (em_folder_view_print): Use
	e_dialog_set_transient_for().
	(emfv_message_delete): Fixed a FIXME.

	* em-folder-browser.c (emfb_edit_cut): Implemented.
	(emfb_edit_copy): Implemented.
	(emfb_edit_paste): Implemented.

	* em-format-html-display.c (em_format_html_display_cut): New function.
	(em_format_html_display_copy): New.
	(em_format_html_display_paste): New.

2003-08-25  Jeffrey Stedfast  <fejj@ximian.com>

	* em-utils.c (em_utils_flag_for_followup): Use
	e_dialog_set_transient_for().
	(em_utils_filesel_prompt): Same.
	(post_reply_to_message): Here too.
	(em_utils_edit_filters): Same.
	(create_new_composer): And here.
	(em_utils_compose_new_message_with_mailto): Here too.
	(em_utils_post_to_url): "
	(redirect_get_composer): Same.
	(reply_get_composer): Again...

	* em-folder-browser.c (emfb_tools_filters): Implemented.

	* em-utils.c (em_utils_edit_filters): New function to open the
	filter editor dialog.

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

	* em-utils.c (em_utils_flag_for_followup): Implemented.
	(em_utils_flag_for_followup_clear): Implemented.
	(em_utils_flag_for_followup_completed): Implemented.

	* em-folder-view.c (emfv_message_followup_flag): Implemented.
	(emfv_message_followup_clear): Implemented.
	(emfv_message_followup_completed): Implemented.

2003-08-22  Not Zed  <NotZed@Ximian.com>

	* em-camel-stream.c (em_camel_stream_new): now take the gtkhtml
	too, and hook onto it's destroy so we don't try writing anymore
	after its gone.
	(stream_write, stream_flush, stream_close, emcs_gui_received):
	NOOP if the gtkhtml has been destroyed.
	(emcs_gtkhtml_destroy): null out the stream when the gtkhtml gets
	destroyed, it is no longer valid.
	(emcs_gui_received): dont try to soak all outstanding events, it
	always runs synchronous anyway, just get one and exit.

	* em-format-html.c (efh_gtkhtml_destroy): if the gtkhtml gets
	destroyed, abort any pending timeouts/processing.
	(efh_format_source): fixed implementation to write out all
	headers.
	(efh_multipart_related, emfh_multipart_related_check): separate
	checking for unused parts into a separate job, which is run after
	previous ones are executed.  keep track of visibility tree level
	in job, etc.

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

	* em-folder-browser.c (emfb_mail_compose): Implemented.
	(emfb_mail_post): Implemented.

	* em-utils.c (em_utils_compose_new_message): New function.
	(em_utils_compose_new_message_with_mailto): New.
	(em_utils_post_to_url): New.

2003-08-21  Not Zed  <NotZed@Ximian.com>

	* subscribe-dialog.glade: removed the text in the progress thing.
	It never showed up anyway and caused weird resizing stuff when the
	progress bar was active.

	* em-subscribe-editor.c: Found the correct version of the new
	subscribe code (on branch, duh!), and integrated it.
	(sub_selection_changed): Sensitise buttons based on selection.

	* em-format-html.c (efh_text_plain, efh_text_enriched)
	(efh_write_text_html): Use format_text for text output.
	(efh_write_image): use explicit image writer.
	(emfh_gethttp): added some progress stuff.
	(efh_format_do): maintain the accessible uri tree during jobs.
	(efh_url_requested): store the current uri accessibility tree node
	in the job, so it can be properly set for sub-jobs.
	(emh_multipart_related): moved here, can't use super-class version
	as it doesn't know about async jobs.
	(type_buildin_table[]): Added image/jpg and image/jpeg for the
	brokenmailers out there and to reduce the whinge.

	* em-format.c (em_format_format_content): For text parts, perform
	default charset/charset snooping/decoding.  No longer closes the
	stream once complete.
	(emf_write_related): close stream ourselves.

2003-08-21  Jeffrey Stedfast  <fejj@ximian.com>

	* em-folder-view.c (emfv_message_forward): Implemented.
	(emfv_message_forward_attached): Implemented.
	(emfv_message_forward_inline): Implemented.
	(emfv_message_forward_quoted): Implemented.
	(emfv_message_redirect): Implemented.
	(emfv_message_post_reply): Implemented.
	(emfv_message_reply_all): Implemented.
	(emfv_message_reply_list): Implemented.
	(emfv_message_reply_sender): Implemented.
	(emfv_message_resend): Implemented.
	(emfv_message_saveas): Implemented.

	* em-composer-utils.c: New source file containing all the composer
	send/draft callback mess.

	* em-utils.c (em_utils_uids_copy): New convenience function to
	copy a list of uids.
	(em_utils_uids_free): New convenience function to free a list of
	uids.
	(em_utils_save_message): New function to save a CamelMimeMessage
	(prompts the user for a location to save).
	(em_utils_save_messages): New function to save a list of messages
	(given a folder and list of uids).
	(em_utils_configure_account): Configure a new account...
	(em_utils_check_user_can_send_mail): Make sure the user has a
	transport setup.
	(em_utils_edit_message): New function to edit a message object.
	(em_utils_edit_messages): New function to open a composer to edit
	each message.
	(em_utils_forward_attached): New function to forward messages as
	an attachment,
	(em_utils_forward_inline): Forward a bunch of messages inline.
	(em_utils_forward_quoted): Forward a bunch of messages quoted.
	(em_utils_redirect_message): Redirect a message object.
	(em_utils_redirect_message_by_uid): Redirect a message given a
	folder and uid.
	(em_utils_reply_to_message): Reply to a message object.
	(em_utils_reply_to_message_by_uid): Reply to a message given a
	folder and uid.
	(em_utils_post_reply_to_message_by_uid): Post a reply to a message
	given a folder and uid.

	* mail-ops.c (filter_folder_free): Use em_utils_uids_free().
	(transfer_messages_free): Same.
	(get_messages_free): Here too.
	(save_messages_free): Same.

2003-08-20  Not Zed  <NotZed@Ximian.com>

	* em-subscribe-editor.[ch]: new widget, a dialog for editing
	subscriptions.

	* em-format-html.c (efh_format_done): emit a complete when done.

	* em-format.c (emf_class_init): Added a 'complete' signal, so that
	printing knows when to print.

	* em-format-html-print.c (em_format_html_print_print): Changed to
	take the message and source formatter too.  Runs an async render
	then prints.

2003-08-19  Not Zed  <NotZed@Ximian.com>

	* em-*.c: stacks more changes, added some bonobo menu setup, and
	implemented the trivial functions.

	* em-message-browser.[ch]: New message browser, inherits from
	em-folder-view.  Basically works.
	
	* message-list.c (message_list_select_uid): if we're selecting
	while still loading, setup a pending select.
	(regen_list_free): Check for a pending select, and select the
	message if we're now idle.

	* em-folder-view.c (em_folder_view_set_message,
	em_folder_view_set_folder): Make virtual macro's.
	(emfv_control_activate): added hook to enable bonobo state when setup.

	* em-format.c (emf_format_clone): base implementation, just clears
	state data.

	* em-format.h: change ::format to ::format_clone.  Make
	em_format_format_clone a macro/virtual method.

	* mail-mt.c (em_channel_setup): new function to setup i/o
	channels, so we can control the recursive flag.  leave off for
	now.
	(mail_msg_init): setup MsgPort channels using above.

	* em-format-html.c (efh_format): serialise/de-recursify formatting
	via a timeout function.
	(efh_format_timeout): keep polling to find out if cancellation is
	complete, then kick off a new render.

2003-08-18  Not Zed  <NotZed@Ximian.com>

	* em-*.c: more updates, incl threaded formatting queue.

2003-08-18  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-display.c (em_format_html_display_zoom_in): New
	method to zoom-in on the gtkhtml contents.
	(em_format_html_display_zoom_out): Same but for zoom-out
	(em_format_html_display_zoom_reset): You get the idea.

2003-08-12  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (invert_selection): Use
	message_list_invert_selection().
	(select_thread): Use message_list_select_thread().
	(select_all): Use message_list_select_all().

	* message-list.c (message_list_select_all): New function.
	(message_list_select_thread): New function.
	(message_list_invert_selection): New function.

2003-08-12  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c: Synced up with HEAD.

	* component-factory.c:

	* mail-folder-cache.[c,h]:

	* mail-tools.h:

	* mail-ops.[c,h]:

	* mail-send-recv.c:

	* mail-format.[c,h]:

	* mail-display.c:

	* mail-account-gui.c:

	* mail-local.c:

	* mail-offline-handler.c:

	* subscribe-dialog.c:

2003-08-12  Jeffrey Stedfast  <fejj@ximian.com>

	* em-format-html-display.c: Fixed some compiler warnings.

	* em-format.c: Updated for new mime-parser changes made to HEAD.

	* em-folder-view.c: Fixed some compiler warnings.

	* em-format-html.c: Fixed some compiler warnings.

2003-08-06  Not Zed  <NotZed@Ximian.com>

	* em-format-html-display.c (efhd_format_attachment): Added bonobo
	embeddables.

2003-08-01 Harry Lu  <harry.lu@sun.com>

	*Fix for bug #6951

	* mail-display.c (launch_cb): Bypass the new added menu item.
	(save_all_parts_cb): New function. Do the real save-all work.
	(save_all_parts): New function. Get the directory to save to.
	(save_all_cb): New function. The call-back function for the new 
	added menu item.
	(pixmap_press): Add the new menu item "Save All Attachment...".
	(ptr_array_free_notify): A simple wrapper function to free the
	pointer array.
	(do_attachment_header): Save attachment pointer in an array for 
	"Save All Attachment" use.

2003-08-01  Yuedong Du  <yuedong.du@sun.com>

	* message-browser.c (on_key_press): close mail message window
	using 'ESC' key, fix bug #47087

2003-07-28  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-crypto.c: Removed smime functions as they were stale.

2003-07-25  Jeffrey Stedfast  <fejj@ximian.com>

	* message-browser.c (message_browser_new): Handle our own Delete
	key presses. Fixes bug #45597.

2003-07-25  Ettore Perazzoli  <ettore@ximian.com>

	* mail-callbacks.c (do_view_message): No need to pass a shell
	argument to message_browser_new() anymore.

	* message-browser.c (message_browser_new): Removed arg shell.  No
	need to pass it to folder_browser_new() either.

	* mail-component.c (create_view_callback): No need to pass a shell
	arg to folder_browser_factory_new_control() anymore.

	* folder-browser-factory.c (folder_browser_factory_new_control):
	Removed arg shell; folder_browser_browser_new() doesn't need it
	anymore.

	* folder-browser.c (folder_browser_destroy): No need to unref
	->shell anymore.
	(folder_browser_new): Removed shell arg.
	(folder_browser_gui_init): Removed a const qualifier that was not
	supposed to be there.

	* folder-browser.h: Removed member shell from struct
	FolderBrowser.

2003-07-25  Ettore Perazzoli  <ettore@ximian.com>

	* folder-browser.c (folder_browser_gui_init): Get the search
	context through mail_component_peek_search_context(), since it's
	no longer a global variable.
	(folder_browser_gui_init): Cleaned up an extra unneeded if()
	statement.

	* mail-component.c: New member search_context in struct
	MailComponentPrivate.
	(mail_component_peek_search_context): New.
	(setup_search_context): New function to initialize the
	search_context, based on the old code in component-factory.c.
	(mail_component_init): Call it here.
	(impl_dispose): Unref the rule_context.

	* mail-component-factory.c: Removed global variable
	search_context.

2003-07-25  Ettore Perazzoli  <ettore@ximian.com>

	* mail-component.c (browser_page_switched_callback): New callback
	for the "page_switched" signal on EStorageBrowser; deactivate the
	previous page, activate the new one.
	(impl_createControls): Connect.

2003-07-24  Ettore Perazzoli  <ettore@ximian.com>

	* mail-mt.c (do_op_status): Pass "evolution-mail" as the ID to
	evolution_activity_client_new().  [This is just a temporary thing
	to avoid the fact that we don't have component-factory.h anymore.
	Eventually we'll just get rid of the activity client stuff.]

	* mail-component-factory.c: Added to the build.  Also, finished
	implementing and moving the factory over from component-factory.c.

	* component-factory.c: Removed from the build.
	* component-factory.h: Removed from the build.

	* mail-component.c: Removed some debugging messages.

2003-07-23  Ettore Perazzoli  <ettore@ximian.com>

	* subscribe-dialog.c: Converted to use EStorages instead of
	EvolutionStorages and the new MailComponent object.

	* mail.h: Nuked a bunch of stuff.  This will go away when I am
	done refactoring.

	* mail-offline-handler.c: Use the new MailComponent object.

	* mail-folder-cache.c, mail-folder-cache.h: Converted to use
	EStorages instead of EvolutionStorages.

	* mail-display.c: Use g_timeout and g_source functions instead of
	gtk_timeout functions.

	* mail-send-recv.c: Use g_timeout and g_source functions instead
	of gtk_timeout functions.
	(receive_update_got_store): Updated for the new mail_note_store().

	* mail-session.c: Use g_timeout and g_source functions instead of
	gtk_timeout functions.

	* mail-config-factory.c (factory): Removed.

	* folder-browser.c (folder_browser_destroy): Use GLib
	timeout/source functions instead of the deprecated GTK ones.
	(done_message_selected): Likewise.
	(folder_browser_gui_init): Protect against fb->search being NULL.

	* mail-account-gui.c (add_new_store): Use new MailComponent object
	and EStorages instead of EvolutionStorages.
	(mail_account_gui_save): Likewise.

	* mail-accounts.c (account_delete_clicked): Use new MailComponent
	object and EStorages instead of EvolutionStorages.
	(account_able_clicked): Likewise.
	(account_able_toggled): Likewise.

	* mail-autofilter.c: Use mail_component_peek_base_directory()
	instead of the evolution_dir global.
	* mail-callbacks.c: Likewise.
	* mail-config.c (uri_to_evname): Likewise.
	(mail_config_get_signature_list): Likewise.
	(delete_unused_signature_file): Likewise.
	* mail-display.c (mail_display_class_init): Likewise.
	* mail-importer.c (mail_importer_make_local_folder): Likewise.
	* mail-local.c (mlf_getv): Likewise.
	* mail-ops.c (uid_cachename_hack): Likewise.
	* mail-summary.c (generate_folder_summaries): Likewise.
	* mail-tools.c (mail_tool_get_local_inbox): Likewise.
	(mail_tools_folder_to_url): Likewise.
	* mail-vfolder.c (mail_vfolder_delete_uri): Likewise.
	(mail_vfolder_rename_uri): Likewise.
	(context_rule_removed): Likewise.
	(store_folder_deleted): Likewise.
	(store_folder_renamed): Likewise.
	(vfolder_load_storage): Likewise.
	(vfolder_editor_response): Likewise.
	(edit_rule_response): Likewise.
	(new_rule_clicked): Likewise.
	(vfolder_gui_add_rule): Likewise.
	* mail-session.c (main_get_filter_driver): Likewise.
	(mail_session_forget_password): Likewise.
	(mail_session_init): Get a base_directory arg.

	* component-factory.c, component-factory.h: Disabled a bunch of
	stuff to get it to compile in the new configuration.  These files
	will eventually go away when I am done refactoring this.

	* Makefile.am: Do not build importers, compile generate
	skels/stubs for Evolution.

	* GNOME_Evolution_Mail.server.in.in: Rename control factory to
	OAFIID:GNOME_Evolution_Mail_Factory2.  Add new component
	GNOME_Evolution_Mail_Component2.

	* mail-component-factory.c: New file implementing the Bonobo
	factory.

	* mail-component.c, mail-component.h: New files implementing the
	new mail component, using the new Evolution::Component IDL.

2003-07-23  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (mail_format_data_wrapper_write_to_stream): Revert
	prior changes.

2003-07-23  Dan Winship  <danw@ximian.com>

	* folder-browser.c (message_list_drag_data_get): Fix type warnings
	(folder_browser_toggle_caret_mode): Remove unused variable.

	* folder-browser-ui.c (basename): remove unused function

	* mail-account-gui.c (mail_account_gui_build_extra_conf): Fix
	warnings

	* mail-callbacks.c (empty_trash): Remove unused variable.

	* mail-display.c: #include gal/widgets/e-gui-utils.h for
	e_auto_kill_popup_menu_on_selection_done

	* mail-importer.c: #include e-util/e-path.h for e_path_to_physical

	* mail-session.c (main_play_sound): don't declare filename to be
	const and then free it.

	* mail-vfolder.c (vfolder_edit_rule, vfolder_gui_add_rule): Fix
	casts

	* message-list.c (build_flat_diff): Fix a typo in the
	non-BROKEN_ETREE code

2003-07-16  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (handle_multipart_encrypted): We don't have
	camel_pgp_mime_is_rfc2015_encrypted() anymore so just look at the
	protocol for now.
	(mail_format_data_wrapper_write_to_stream): Updated for the new
	way camel handles content objects.

2003-07-15  Federico Mena Quintero  <federico@ximian.com>

	* folder-browser.c (message_list_drag_data_received): Handle
	invalid URIs, or more likely, the last empty element in a URI list
	--- g_strsplit() will yield { "uri1", "", NULL }.  Fixes #46398.

	* component-factory.c (destination_folder_handle_drop): Likewise.

2003-07-15  Yuedong Du  <yuedong.du@sun.com>

	* mail-config.c: (config_write_style), (mail_config_init): remove
	the use of caret mode widget style.
	* mail-display.c: (display_notify), (mail_display_new): use new
	gtkhtml api to set caret mode.

2003-07-11  Antonio Xu  <antonio.xu@sun.com>

	* folder-browser-ui.c: Change the EditPaste mask to IS_0MESSAGE so
	that it is always activatable. Fixes bug #46018.

2003-07-04  Maxx Cao  <maxx.cao@sun.com>

	** For bug #41839

	* mail-display.c (do_attachment_header): Attachment buttons made
	accessable with keyboard (focusable). "Inline" button is disabled
	when attachment can't be viewed inline.
	(do_signature): Signature button made accessable with keyboard
	(focusable).
	(button_press): Function changed to an event callback (originally
	gtkbutton signal callback).
	(popup_menu_placement_callback): Function added to place popup
	menu (of attachment) beside button when activated by keyboard.

2003-07-10  Yuedong Du  <yuedong.du@sun.com>

	* evolution-mail.schemas: add a gconf key corresponding to newly 
	introduced caret mode of gtkhtml widget.

	* folder-browser-ui.c: new verb handling, corresponding the new menu
	entry for the caret mode flag. 

	* folder-browser.h: declaration of new verb handler to the menu entry 
	that turn caret mode on/off. The function just set the new introduced
	gconf key.

	* folder-browser.c: ditto

	* mail-config.c: lstione to the new gconf key, and when caret mode 
	flag is set/unset,change the style of gtkhtml widget. see bug
	#44607.

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

	* mail-crypto.h: Removed camel-pgp-mime.h, it no longer exists.

	* mail-format.c: Remove camel-pgp-mime.h

2003-07-07  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (mail_generate_reply): Use
	camel_strcase_hash/equal.

	* upgrade-mailer.c: Updated to use the camel-file-utils version of
	mkdir.

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

	* mail-tools.c (mail_tool_forward_message): Strip the signature
	from the body text. Fixes bug #45523. While we're here, also fix
	the code to quote exactly the same way as the
	mail_tool_quote_message() function.
	(mail_tool_quote_message): The last arg should not be
	'want_plain', because that arg is for whether or not the body
	should be quoted.

	* folder-browser.c (message_list_drag_data_get): Apply a
	From-filter when dragging as a test/uri-list and
	message/rfc822. Fixes bug #45617. Also free the uids ptrarray for
	the text/uri-list case.

2003-07-01  Dan Winship  <danw@ximian.com>

	* mail-display.c (pixbuf_for_mime_type): Gone
	(pixbuf_gen_idle): Use e_icon_for_mime_type instead.

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

	* message-list.c (filter_date): Use the newer utf8 versions of the
	e_strftime*() functions since our format strings are all now in
	UTF-8.

	* mail-display.c (mail_display_render): Use the newer
	e_utf8_strftime_fix_am_pm().

	* mail-callbacks.c (mail_generate_reply): Use e_utf8_strftime(),
	otherwise we can end up with invalid utf-8.

2003-06-25  Radek Doulik  <rodo@ximian.com>

	* mail-config.c (config_write_style): provide hardcoded default
	(red) spell error color

2003-06-24  Jeffrey Stedfast  <fejj@ximian.com>

	Might fix bug #45368 but I wouldn't bet on it.

	* message-browser.c (message_browser_new): Record the signal id
	for folder_loaded.
	(message_browser_folder_loaded): disconnect by id rather than
	searching for the handler. Save the id of the message_list_built
	signal handler.
	(message_browser_message_list_built): Disconnect the handler by
	id.
	(message_browser_destroy): Disconnect the signal handlers by id.

2003-06-20  Not Zed  <NotZed@Ximian.com>

	** See bug #43887

	* mail-format.c (mail_get_message_body): handle text/enriched and
	text/richtext explictly, and dont treat them as text/plain.

2003-06-23  Radek Doulik  <rodo@ximian.com>

	* mail-config.c (config_write_style): add
	EvolutionMailPrintHTMLWidget style assignment

	* mail-callbacks.c (do_mail_print): set printing widget name

2003-06-23  Dan Winship  <danw@ximian.com>

	* message-list.c (on_selection_changed_cmd): Save the idle_id

2003-06-23  Larry Ewing  <lewing@ximian.com>

	* folder-browser.c (do_message_selected): make sure not to strcmp
	a possibly NULL string.

2003-06-19  Not Zed  <NotZed@Ximian.com>

	** See bug #45063

	* folder-browser.c (do_message_selected): dont re-load if the same
	message gets selected again as one we've already shown.  Etree
	sends out selection changed events even when when it hasn't.

2003-06-18  Jeffrey Stedfast  <fejj@ximian.com>

	* message-list.c (hide_save_state): Only save state if we have a
	folder reference. Fixes some warnings about casting a NULL object
	to a CamelFolder.

2003-06-16  Jeffrey Stedfast  <fejj@ximian.com>

	* message-list.c (ml_tree_value_at): Don't display an unread icon
	for a parent message status if it has unread children but has been
	read itself. Instead, show that we have unread children by just
	making the message test bold (which it was already doing, so
	yay... this was easy). Fixes bug #42630.

2003-06-16  Not Zed  <NotZed@Ximian.com>

	** See bug #44609

	* mail-vfolder.c (vfolder_edit_rule): put the ok/cancel buttons in
	the stupid gnome 2 order.

	** See bug #33593

	* message-list.c (on_selection_changed_cmd): also listedn to
	selection changed events, since the etable api has changed.
	(get_selected_cb): helper for above.
	(message_list_construct): hook to selection change signal.

	* mail-callbacks.c (composer_send_queued_cb): Unref the composer
	to match the ref composer_send_cb();

	** See bug #44519

	* message-browser.c (message_browser_message_list_built): We want
	to disconnect from the messagelist, not folderbrowser signal.

2003-06-11  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (format_mime_part): We only really want to use
	mail_identify_mime_part() if the content-type is
	application/octet-stream - any other type (if it doesn't have a
	handler) should just force the user to save to disk.
	(handle_text_plain): Only pay attention to format=flowed if the
	mime-type is text/plain (handle_text_plain is the generic text
	handler, so we might be processing parts that are not really
	text/plain, thus the format param may have different meaning for
	those other textual types).

2003-06-11  Larry Ewing  <lewing@ximian.com>

	* mail-format.c (mail_lookup_handler): free the application list
	if we are bailing.

	* mail-send-recv.c (free_folder_info): free the info structure as
	well.

2003-06-06  Jeffrey Stedfast  <fejj@ximian.com>

	* message-tag-followup.c (get_week_start_day): Use mail-config's
	gconf client.
	(target_date_new): Same.

	* message-list.c (message_list_set_folder): Use mail-config's
	gconf client.
	(mail_regen_list): Same.

	* mail-tools.c (mail_tool_quote_message): Use mail-config's gconf
	client.
	(mail_tool_forward_message): Same.

	* mail-session.c (main_get_filter_driver): Use mail-config's gconf
	client.

	* mail-preferences.c (mail_preferences_init): Use mail-config's
	gconf client.
	(mail_preferences_finalise): Don't unref the gconf client.

	* mail-format.c (write_headers): Use mail-config's gconf client.
	(mail_format_data_wrapper_write_to_stream): Same.
	(handle_text_plain): And here.

	* mail-display.c (save_data_cb): Use mail-config's gconf client.
	(save_part): Same.
	(on_url_requested): Here too.
	(mail_text_write): And here.
	(mail_display_init): And here.
	(mail_display_destroy): Here too.
	(mail_display_new): Again here.

	* mail-composer-prefs.c (sig_add_cb): Use mail-config's gconf
	client.
	(mail_composer_prefs_construct): Same.

	* mail-callbacks.c (ask_confirm_for_unwanted_html_mail): Use
	mail-config's gconf client.
	(ask_confirm_for_empty_subject): Same.
	(ask_confirm_for_only_bcc): Here too.
	(composer_get_message): And here.
	(create_msg_composer): Again here.
	(mail_generate_reply): Same.
	(forward): And here.
	(transfer_msg_done): "
	(delete_msg): "
	(confirm_expunge): "

	* component-factory.c (owner_unset_cb): Use mail-config's gconf
	client.

	* folder-browser-ui.c (folder_browser_ui_add_message): Use the
	mailer's gconf client.
	(folder_browser_ui_add_list): Same.
	(folder_browser_ui_add_global): Here too.

	* folder-browser.c (save_cursor_pos): Use the mailer's gconf
	client.
	(folder_browser_set_message_preview): Same.
	(folder_browser_toggle_preview): Here too.
	(folder_browser_toggle_threads): And here.
	(folder_browser_toggle_hide_deleted): Here as well.
	(folder_browser_set_message_display_style): And here.
	(fb_resize_cb): Here.
	(paned_realised): And here.
	(done_message_selected): And everywhere...

	* mail-account-gui.c (sig_add_new_signature): Use the mailer gconf
	client.

	* mail-config.c (mail_config_get_gconf_client): New function to
	return the global GConfClient used by the mailer.
	(mail_config_write_on_exit): On exit, free our objects and such.
	(mail_config_signature_run_script): Use config->gconf.

2003-06-04  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (invert_selection): Get rid of the if-focused
	code, that will always prevent the etree from getting the
	selection inverted because the menu item will always have focus at
	this time. Fix for bug #43972.

2003-06-11  Not Zed  <NotZed@Ximian.com>

	** See bug #22542
	
	* component-factory.c (storage_create_folder): If we're creating a
	folder on a vstore, popup a vFolder editor rather than failing.

2003-06-05  Not Zed  <NotZed@Ximian.com>

	** Part of #42691.
	
	* importers/Makefile.am (BUILT_SOURCES): added server_DATA.

	* Makefile.am (%.server.in): create a proper implicit rule for
	temporary .in file.

2003-06-04  Not Zed  <NotZed@Ximian.com>

	** See bug #43974

	* mail-tools.c (mail_tool_do_movemail): use a proper CamelURL to
	decode the uri, not hacky strcmp stuff.

	* mail-account-gui.c (extract_values): if we have an conf_entry,
	ignore username, hostname, and path ones, as these are handled
	implicitly in the url itself.  Came about because of the fix for
	#42838.

2003-06-03  Federico Mena Quintero  <federico@ximian.com>

	* mail-search.c (mail_search_construct): Put the buttons in HIG
	order; don't replace the label of the stock Find button.  Also,
	add Escape as a keybinding for the Close button (see why GTK+ is
	on crack on b.g.o #74221 and #101293).

