Commit Graph

56 Commits

Author SHA1 Message Date
6febeab327 Set a title on the window "Reconfigure %s" where %s is the folder name.
2001-05-11  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_reconfigure_folder): Set a title on the
	window "Reconfigure %s" where %s is the folder name. Also, don't
	allow more than one of these type windows to be opened per folder.

	* mail-tools.c (mail_tool_get_folder_name): Fix Danw's kludge to
	actually work :-)

svn path=/trunk/; revision=9767
2001-05-11 19:50:04 +00:00
2bb791349c Convert the Subject header to HTML and also make sure that the Subject,
2001-05-08  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-tools.c (mail_tool_forward_message): Convert the Subject
	header to HTML and also make sure that the Subject, To, and From
	header values are non-NULL before feeding them into
	e_text_to_html().

svn path=/trunk/; revision=9718
2001-05-08 19:18:30 +00:00
b024121e89 signature changing
* signature changing

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

        * mail-tools.c (mail_tool_quote_message): set object data directly
        in HTML source

        * mail-callbacks.c (mail_generate_reply): remove \n from citation
        (mail_generate_reply): don't use e_msg_composer_mark_text_orig

svn path=/trunk/; revision=9558
2001-04-25 09:32:46 +00:00
57574f0be3 Cleaned up #includes. Remove unneccesary includes of <gnome.h>,
2001-03-29  Kjartan Maraas  <kmaraas@gnome.org>

	* *.*: Cleaned up #includes. Remove unneccesary includes of
	<gnome.h>, <gtk/gtk.h>, <bonobo.h> and replaced with more
	fine grained headers where needed. Also marked a bunch of
	strings for translations and added some missing prototypes.

svn path=/trunk/; revision=9025
2001-03-29 20:53:17 +00:00
5b140dc1c1 set color in html citation
2001-03-20  Radek Doulik  <rodo@ximian.com>

	* mail-tools.c (mail_tool_quote_message): set color in html
	citation

	* mail-config.c: added citation highlighting configuration

	* mail-tools.c (mail_tool_quote_message): use citation
	highlighting

	* mail-display.c (mail_text_write): use citation highlighting

svn path=/trunk/; revision=8848
2001-03-20 16:50:43 +00:00
97a894dc7d Set the Forward->Quoted callback. Also set the forward->Attachment
2001-03-08  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser-factory.c: Set the Forward->Quoted callback.
	Also set the forward->Attachment callback.

	* mail-view.c (view_forward_msg): Specify FORWARD_ATTACHED.

	* mail-callbacks.c (forward_attached): Don't call
	forward_messages() anymore...never really needed to. Just handle
	it directly.
	(forward_inlined): Specify FORWARD_INLINE as the flag argument.
	(forward_quoted): New function sorta like forward_inlined except
	this forwards the message quoted.

	* mail-tools.c (mail_tool_forward_message): New function to
	prepare a message to be forwarded.

svn path=/trunk/; revision=8611
2001-03-09 00:43:35 +00:00
2de08e6b9a Remove very old camel lock stuff.
2001-03-03  Not Zed  <NotZed@Ximian.com>

        * mail-tools.c: Remove very old camel lock stuff.

        * mail-local.c (register_folder_registered): Add the local folder
        as a potential vfolder source.

        * folder-browser.c (got_folder): When we have a new folder,
        register it as a potential vfolder source.

        * mail-vfolder.c: Added the source rule to the vfolder_info.
        (vfolder_refresh): Store the rule in the vfolder info, etc.
        (vfolder_register_source): Function to register a newly opened
        folder with us.
        (vfolder_uri_to_folder): Save the folder in the vfolder_info too.
        (source_finalise): Handle clenaup when the folder dies.

svn path=/trunk/; revision=8534
2001-03-02 23:39:39 +00:00
1f84ac2916 Toss the mail_tool_camel_lock* stuff. Same. Here too.
2001-02-24  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c: Toss the mail_tool_camel_lock* stuff.
	* mail-ops.c: Same.
	* mail-summary.c: Here too.

	* mail-tools.c (mail_tool_uri_to_folder_noex): Blown away!
	(mail_tool_filter_get_folder_func): *kapoosh*
	(mail_tool_camel_lock_up): Same.
	(mail_tool_camel_lock_down): Same.
	(mail_tool_set_uid_flags): Don't need this rubbish anymore either.

svn path=/trunk/; revision=8384
2001-02-24 21:57:23 +00:00
ac97d963b0 No longer need to do a vtrash_cleanup() (it also doesn't exist anymore).
2001-02-23  Jeffrey Stedfast  <fejj@ximian.com>

	* main.c (main): No longer need to do a vtrash_cleanup() (it also
	doesn't exist anymore).

	* component-factory.c (mail_load_storages): Updated to use the new
	vtrash code.
	(owner_set_cb): Same.

	* mail-tools.c (mail_tool_uri_to_folder): Update to handle the
	"vtrash:" url prefix so that we can extract the REAL uri and know
	to get the trash folder.

	* mail-vtrash.c (mail_vtrash_add): Add the vTrash folder to the
	EvolutionStorage.
	(mail_vtrash_create): Get the store based on the uri (async) and
	then call mail_trash_add.
	(vtrash_cleanup): Removed.
	(vtrash_uri_to_folder): Removed.
	(vtrash_create): Replaced by mail_vtrash_create()

svn path=/trunk/; revision=8367
2001-02-23 16:51:45 +00:00
e939da9df4 Fixed memory corruption bug.
2001-02-22  Jeffrey Stedfast  <fejj@ximian.com>

	* openpgp-utils.c (openpgp_verify): Fixed memory corruption bug.

	* mail-format.c (try_inline_pgp_sig): Check to make sure the
	validity isn't NULL.
	(handle_multipart_signed): Check for NULL validities.

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

	* mail-tools.c (mail_tool_uri_to_folder): Protect against NULL
	uri's.

	* mail-vtrash.c: Do mutex locking on the global hash table - this
	should clear up some segfaults ;-)

	* mail-config-druid.c (druid_finish): Set the 'enabled' member of
	the source to TRUE if the URL exists else set to FALSE.
	(incoming_type_changed): If the provider chosen is "None" then
	gray-out the auto-check widgets and the check-settings, otherwise
	sensitize them.

	* mail-account-editor.c (construct): Added a few more settings.
	(apply_changes): Save the new settings.

	* mail-config.c (service_copy): Updated.
	(config_read): Read in whether or not the account is enabled.
	(mail_config_write): Save if the account is enabled or not.

svn path=/trunk/; revision=8349
2001-02-22 21:40:26 +00:00
8f53c2bcee Removed, no longer link with libcamelvee. (evolution_mail_LDADD): Ditto.
2001-02-22  Not Zed  <NotZed@Ximian.com>

        * Makefile.am (CAMEL_OBJS_EXTRA): Removed, no longer link with
        libcamelvee.
        (evolution_mail_LDADD): Ditto.

        * mail-vtrash.c: Moved camel-vee-store header ot camel levle.

        * mail-tools.c: Moved camel-vee-folder header to camel.

svn path=/trunk/; revision=8341
2001-02-21 20:30:50 +00:00
63f1ba7ab1 New handy dandy function to ref and return the vfolder storage (will
2001-02-19  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (mail_vfolder_get_vfolder_storage): New handy
	dandy function to ref and return the vfolder storage (will
	probably be disavowed once I figure out how to get the vTrash
	folder to show up in the EvolutionLocalStorage).

	* main.c (main): Call vtrash_cleanup().

	* mail-vtrash.c: New file.
	(vtrash_uri_to_folder): vtrash: URI handler
	(vtrash_create): Replacement async vtrash function for the old one
	in mail-ops.c
	(vtrash_cleanup): Cleanup code - unrefs the cached vtrash folders
	and free's the hashtable.

	* Makefile.am: Added mail-vtrash.[c,h].

	* mail-tools.c (mail_tool_uri_to_folder): If we have a vtrash:
	URI, call the vtrash URI handler function rather than continuing
	on. Yes, I know this is a hack and it needs to be fixed.

	* mail-ops.c (mail_do_setup_trash): Removed.
	(mail_trash_get): Removed.

	* component-factory.c (owner_set_cb): Create the vTrash folder for
	the LocalStore here.

	* mail-local.c (get_folder_info): Implement.

svn path=/trunk/; revision=8288
2001-02-19 23:38:53 +00:00
fa2c19fdd1 Updates for CamelStore changes, small memory leak fixes. (lookup_folder):
* mail-local.c: Updates for CamelStore changes, small memory leak
	fixes.
	(lookup_folder): Removed (and moved into the reconfigure code)
	since this method no longer exists in CamelStore.
	(do_reconfigure_folder, etc): Update the info in the
	MailLocalStore after reconfiguring.
	(mail_local_lookup_folder): Removed

	* local-config.glade: fix padding of the label_format

	* message-list.c (ml_tree_value_at): Don't keep message infos
	reffed across calls, since this can cause badness after a
	reconfigure. Instead, just strdup the needed values and free those
	on the next call.

	* mail-tools.c (mail_tool_get_root_of_store): Unused, remove.
	(mail_tool_get_inbox): use camel_store_get_inbox.

	* evolution-outlook-importer.c (load_file_fn):
	* evolution-mbox-importer.c (load_file_fn): Use
	mail_tool_get_local_inbox() instead of mail_importer_get_folder()

	* mail-importer.c (mail_importer_get_folder): Removed

svn path=/trunk/; revision=8147
2001-02-09 16:45:09 +00:00
e40e98e0f8 s/filter-driver.h/camel-filter-driver.h/ and update first arg of
* mail-tools.h: s/filter-driver.h/camel-filter-driver.h/ and
	update first arg of mail_too_filter_get_folder_func

	* mail-tools.c (mail_tool_filter_get_folder_func): Update first
	arg to CamelFilterDriver *

	* mail-send-recv.c (receive_status):
	* mail-ops.c (send_queue_send): s/FILTER/CAMEL_FILTER/

	* mail-callbacks.c: Remove filter-driver.h include

	* mail-accounts.c: Put the news functions inside #ifdef
	ENABLE_NNTP to prevent warnings about unused statis functions.

	* subscribe-dialog.c (subscribe_folders, unsubscribe_folders,
	subscribe_refresh_list): Update prototype to match BONOBO_UI_VERB.
	(populate_store_list): add a de-constifying cast

svn path=/trunk/; revision=7708
2001-01-22 17:47:28 +00:00
88f9e36086 remove a warning with conditional news compilation.
2001-01-22  Not Zed  <NotZed@Ximian.com>

	* component-factory.c (owner_set_cb): remove a warning with
	conditional news compilation.

	* mail-ops.h: Cleaned up the header list.

	* folder-browser-factory.c: Replace the old get_send mail with the
	new one (button).

	* mail-ops.c (set_x_mailer):
	(mail_load_evolution_rule_context):
	(mail_do_fetch_mail):
	(mail_do_filter_ondemand):
	(mail_send_mail_old):
	(mail_do_send_queue): All removed, (for) now lives in mail-send-recv.c.
	(load_context):
	(setup_filter_driver):
	(filter_get_folder):
	(mail_filter_folder):
	(mail_fetch_mail):
	(mail_update_subfolders):
	(mail_send_mail):
	(mail_send_queue): New equivalents of all these fundtions, moved
	from mail-send-recv.c ...
	(mail_filter_on_demand): Moved here too.
	(mail_load_filter_context): Export this.

	* mail-callbacks.c (apply_filters): Use the new
	mail_filter_on_demand() call.
	(send_receieve_mail): Use mail_send_receive to do the work.  Add a
	little error handling here that used to be elsewhere.
	(send_queued_mail): Removed.
	(fetch_mail): Removed.
	(select_first_unread): #ifdef'd this out.  Not sure if this still
	makes sense, but it doesn't get run right now anyway.
	(composer_postpone_cb): Fix the setting of message flags.  You
	dont need to get them first, ever.

	* mail-send-recv.c (mail_send_message): Dont use
	mail_tool_send_via_transport anymore (it does nothing useful).

	* mail-tools.c (mail_tool_camel_lock_up): Turned into a noop.
	(mail_tool_camel_lock_down): And here too.
	(mail_tool_move_folder_contents): Removed from the code (hasn't
	bene used for ages).
	(mail_tool_send_via_transport): Removed, it doesn't save anything.

svn path=/trunk/; revision=7702
2001-01-22 11:43:18 +00:00
a2d998fe13 Brand spankin' new config druid, editor, and manager.
2001-01-08  Jeffrey Stedfast  <fejj@helixcode.com>

	* Makefile.am:
	* component-factory.c:
	* folder-browser-factory.c:
	* folder-browser.c:
	* mail-accounts.[c,h]:
	* mail-account-editor.[c,h]:
	* mail-callbacks.c:
	* mail-config.[c,h]:
	* mail-config-druid.[c,h]:
	* mail-config-druid.glade:
	* mail-display.c:
	* mail-format.c:
	* mail-tools.c: Brand spankin' new config druid, editor,
	and manager.

svn path=/trunk/; revision=7313
2001-01-09 03:31:31 +00:00
875c9d02c4 Reverted mail-config changes temporarily until I get it working correctly.
2001-01-08  Jeffrey Stedfast  <fejj@helixcode.com>

	* Makefile.am:
	* component-factory.c:
	* folder-browser-factory.c:
	* folder-browser.c:
	* mail-callbacks.c:
	* mail-config.[c,h]:
	* mail-display.c:
	* mail-format.c:
	* mail-tools.c: Reverted mail-config changes temporarily until
	I get it working correctly.

svn path=/trunk/; revision=7305
2001-01-08 20:51:24 +00:00
35139b2983 Updated to reflect changes to the mail-config API.
2001-01-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-tools.c (mail_tool_quote_message): Updated to reflect
	changes to the mail-config API.

	* mail-display.c (redisplay): Updated to reflect changes to the
	mail-config API.

	* mail-callbacks.c (providers_config): Use the new account dialog.

	* mail-config-druid.c (druid_finish): Load the new storage into
	the shell.
	(mail_config_druid_new): Take a shell argument.

	* mail-format.c (mail_generate_reply): Updated to reflect changes
	to the mail-config API.

	* mail-config-druid.c: Fixed this to build.

	* mail-callbacks.c (check_send_configuration): Updated to reflect
	changes to the mail-config API.
	(create_msg_composer): Same.
	(forward_get_composer): Same.
	(send_queued_mail): Same.
	(composer_send_cb): Same.

	* mail-account-editor.c: Updated to build cleanly.  *
	mail-config-druid.c: Same.  * mail-accounts.c: Same.

	* folder-browser-factory.c (control_activate): Updated for API
	changes in mail-config.

	* folder-browser.c (done_message_selected): Updated for API
	changed in mail-config.
	(folder_browser_gui_init): Same.
	(got_folder): Same.

	* component-factory.c (owner_set_cb): After using the sources
	list, free it as it is no longer a const GSList as with the older
	mail-config code.

	* mail-config.c: Totally rewritten.

svn path=/trunk/; revision=7298
2001-01-08 02:14:23 +00:00
c37da13423 Call mail-callbacks.c:forward_messages(), so the behaviour is the same as
2001-01-03  Not Zed  <NotZed@HelixCode.com>

        * mail-view.c (view_forward_msg): Call
        mail-callbacks.c:forward_messages(), so the behaviour is the same
        as from the folder browser.

        * mail-callbacks.c (forward_messages): New function to forward
        messages, attached or not.
        (forward_inlined): Changed to use new forward-messages
        implementation.
        (forward_attached): Likewise.
        (do_forward_attach): Callback for forwarding as attachment, once
        we have built it.
        (do_forward_inline): Likewise, for inline, once we have retrieved
        the message.
        (forward_message): Removed.

        * mail-ops.c (mail_build_attachment): New function to build an
        attachment of messages.
        (mail_do_attach_message): Removed, functionality superceeded by
        above.
        (mail_do_forward_message): Removed.  Likewise.
        (mail_create_folder): Started work on an alternative
        implementation of create_folder, but not sure about it yet.

        * mail-tools.c (mail_tool_generate_forward_subject): Remove locking.
        (mail_tool_make_message_attachment): Free the description when done.

svn path=/trunk/; revision=7232
2001-01-03 11:52:04 +00:00
a16344fff4 Fix for mail_get_message change, use queue thread.
2001-01-02  Not Zed  <NotZed@HelixCode.com>

	* mail-callbacks.c (view_msg): Fix for mail_get_message change,
	use queue thread.

	* folder-browser.c (done_message_selected): Fix mail_Get_message
	calls, use new thread.
	(do_message_selected): "

	* mail-ops.c (mail_get_message): Add a thread argument so callers
	can specify which queue it executes on.

	* mail-mt.c (mail_msg_free): Fix a free order problem.
	(mail_msg_destroy): Call mail_msg_free to do the work.
	(mail_msgport_replied): "
	(mail_msgport_replied): Check/display errors if we get them.
	(mail_msgport_received): If we have a describe function, say what
	we're doing, also set busy/unbusy.
	(mail_msgport_replied): Clear busy when we get a reply.
	(mail_get_password): Unset busy.
	(mail_msg_received): Set busy as we go.
	(mail_msg_destroy): Unset busy when done.
	(mail_status): Blah blah, new status interface, the other wans't
	workable with the way the shell api works.

2000-12-29  Not Zed  <NotZed@HelixCode.com>

	* folder-browser.c (do_message_selected): If we are reconfiguring,
	just keep polling till we are done (yeah kinda shitty, but easy).
	(folder_browser_set_uri): Clear reconfigure flag here.  ick.
	(got_folder): And here too.
	(on_right_click): Remove locking.
	(hide_sender): and here too.
	(hide_subject): And here.
	(on_right_click): If we are in reconfigure, then the whole menu is disabled.

	* mail-mt.c (status_busy_timeout): Clear the status_busy_timeout_id.

	* mail-local.c (local_storage_new_folder_cb): Made getting folders
	completely synchronous.  The shell expects it, and it was only
	synchronous before by a sideeffect.
	(do_reconfigure_folder): Remove locking stuff.
	(do_reconfigure_folder): Use our own much simpler copying routine
	than that stupid move_folder_contents thing.
	(update_progress): Use mail_status_message() instead.
	(do_reconfigure_folder): Set the reconfigure flag during
	reconfigure & set busy flag.
	(cleanup_reconfigure_folder): clear busy flag.

	* mail-tools.c (mail_tool_uri_to_folder): Remove the tool_lock
	stuff.
	(mail_tool_uri_to_folder_noex): Clear exception on exit.
	(mail_tool_move_folder_contents): Get rid of this really stupid
	function that is only used in one place.

	* component-factory.c (owner_set_cb): Use direct calls to get the
	folders, as this code must run synchronous.  Remove the event wait
	stuff.

	* mail-callbacks.c (edit_msg): Call mail_get_messages, and create
	the composers ourself.
	(do_edit_messages): get_messages callback, create the composers
	and connect to signals we need.
	(view_msg): Dont call do_view_messages, just call
	mail_get_messge for each to get them in parallel.
	(do_view_message): view a single message.

	* mail-ops.c (mail_edit_messages): Just use mail_get_messages
	for this operation.  Removed the other async operation stuff.
	Changed my mind, just removed entirely.
	(mail_do_view_messages): Removed.
	(mail_do_setup_folder): Removed.
	(mail_do_scan_subfolders): Make this run synchronously, as every
	caller expects it to (even if they didn't realise).

2000-12-28  Not Zed  <NotZed@HelixCode.com>

	* mail-callbacks.c (send_queued_mail): Dont expunge the folder
	here, but in send_queue, otherwise it might execute out of order.
	(expunge_folder): Remove the talbe prechange stuff, and infact
	references to the message_list folder, as we have our own folder.
	Also, dont allow expunge if we're already expunging.
	(expunged_folder): Clkear the expunging flag if we're finished.

	* folder-browser-factory.c (control_deactivate): Likewise here.
	Hrm, i thought this function required a callback, silly me.

	* mail-tools.c (mail_tool_make_message_attachment): Remov e
	locking.

	* folder-browser.c (on_message_selected): Use a timeout handler so
	we dont select immediately.
	(folder_browser_set_uri): Changed to use mail_get_folder.
	(got_folder): New callback called when get_folder is finished.
	(folder_browser_destroy): Use new sync interface.

	* mail-ops.c (mail_get_message): New function to asynchrounously
	get a message.
	: #define out mail_tool_camel_lock stuff entirely.
	(mail_get_folder): New function to asynchrounously get a folder.
	(mail_do_load_folder): Removed, replaced by more generic function
	above.
	(mail_do_display_message): Removed, replaced by the more generic
	funciton get_message.
	(mail_get_messages): New function to get a list of messages
	asynchronously.
	(mail_sync_folder): New interface to sync a folder async.
	(mail_expunge_folder): New interface for expunging folder, with
	callback.
	(do_send_queue): Remove lock stuff, and expunge if (and only if)
	successful, also sync the sent folder while we're at it.

	* session.c (mail_session_request_dialog): Changed to use new
	mail_get_password call.

	* mail-mt.[ch]: New threading/interthread messaging framework.

	* main.c (main): Init the message/thread system.

svn path=/trunk/; revision=7223
2001-01-03 01:18:21 +00:00
fba04bdda7 Merge from camel-mt-branch.
2000-12-24  Not Zed  <NotZed@HelixCode.com>

        * Merge from camel-mt-branch.

svn path=/trunk/; revision=7153
2000-12-24 01:03:14 +00:00
d89c235bc7 Only update display every 2 seconds.
2000-12-18  Miguel de Icaza  <miguel@helixcode.com>

	* mail-tools.c (mail_tool_move_folder_contents): Only update
	display every 2 seconds.

	* mail-ops.c (do_view_messages): Only update display every 2 seconds.

svn path=/trunk/; revision=7066
2000-12-18 06:49:02 +00:00
093c2be1a8 Remove an unused variable.
* mail-tools.c (mail_tool_quote_message): Remove an unused
	variable.

svn path=/trunk/; revision=6907
2000-12-11 16:41:13 +00:00
292dd96540 Fix the allocation here (again) and put a comment explaining it. (Fixes a
* mail-tools.c (mail_tool_quote_message): Fix the allocation here
	(again) and put a comment explaining it. (Fixes a crash when
	replying.)

svn path=/trunk/; revision=6717
2000-11-29 20:02:09 +00:00
b8262fdf8d Use the new quote_message function and make it start with "On %s, %s
2000-11-17  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-format.c (mail_generate_reply): Use the new quote_message
	function and make it start with "On %s, %s wrote:" since people
	seem to want that.

	* mail-ops.c (cleanup_forward_messages): Use the new quote_message
	function.

	* mail-tools.c (mail_tool_quote_message): New convenience function
	to quote a message body (since both the reply and forward code do
	similar quoting)

svn path=/trunk/; revision=6605
2000-11-17 22:29:53 +00:00
25dcc0b87a God, I sure wish people would listen when i'm saying i'm changing and API.
2000-11-07  Not Zed  <NotZed@HelixCode.com>

	* mail-display.c (on_object_requested): God, I sure wish people
	would listen when i'm saying i'm changing and API. I mean
	I even mailed everyone and everything.  Can't see any changelog
	either.

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

	* mail-autofilter.c (rule_from_message): Updates for api changes.

	* mail-tools.c (mail_tool_generate_forward_subject): Fixed for api
	changes.  Sigh, whoever wrote the multithread code of the mailer,
	had little idea.  You can't just lock for getting a const value,
	until you are finished with it, cause the owner still owns it.
	Fixed this too.  Yuck, what a horrid forwarding format, can we
	change this, or make it configurable?  The mail headers show who
	forwarded it, we dont need to duplicate it in that UGLY subject.

	* mail-format.c (write_field_to_stream): Removed some jeffness.
	dont g_strdup stuff we dont need to, and remove the
	value_is_encoded thing since we can get the unencoded address
	now.
	(write_address): New function to write an address field.
	(write_headers): Uses write_address to write addresses, cleaner,
	fixed the god-awful unreadable indenting too.
	(handle_text_plain): Use a 'smarter' printf format, so we dont
	need to allocate and copy substrings unecessarily (esp since
	they're about to be allocated any copied another few times
	anyway *sigh*).
	(write_field_to_stream): Commented out the isprint check, which
	afaik serves no purpose.
	(list_add_addresses): New function to build a list of
	display-ready addresses.  Although I think the composer then uses
	these as internet-ready addresses.  It should probably take a list
	of CamelAddress's if thats what it wants.
	(mail_generate_reply): Cleaned up the address list creation stuff
	a heap, and fixes for camel api changes.  Also fixed a small
	memory leak as a side effect (fulladdr wasn't freed if it was the
	same as the sender).

	* mail-display.c (on_object_requested): Changed for interface
	changes to the from address.  I think passing the encoded
	(internet version) of the address is right here.

svn path=/trunk/; revision=6475
2000-11-07 12:33:01 +00:00
dbc4e09113 First draft of folder tree unread message indication for /local
mail folders.

	* mail-local.c: Add a new CamelStore subclass, MailLocalStore,
	which attaches to an Evolution_LocalStorage on one side and
	CamelSession on the other, and keeps track of local folders. Some
	of this code was previously in mail-local-storage.c, which no
	longer exists.
	(local_reconfigure_folder, etc): Various mail_op-related cleanups,
	and wrap d() around a bunch of printfs.

	* mail-tools.c (mail_tool_get_local_inbox_url,
	mail_tool_get_local_movemail_url): Removed
	(mail_tool_get_local_inbox): Simplified.
	(mail_tool_do_movemail): Remove unused dest_url variable.
	(mail_tool_uri_to_folder): Simplify. Now down to two cases
	(vfolder, and everything else).

	* component-factory.c (owner_set_cb): Pass evolution_dir to
	mail_local_storage_startup.

	* Makefile.am (evolution_mail_SOURCES): Remove
	mail-local-storage.[ch]

svn path=/trunk/; revision=6456
2000-11-06 22:03:24 +00:00
2b8e2eeaf9 Simplify this a lot by making IMAP and NNTP use the same code, now that
* mail-tools.c (mail_tool_uri_to_folder): Simplify this a lot by
	making IMAP and NNTP use the same code, now that the IMAP
	namespace doesn't need special magic handling.

svn path=/trunk/; revision=6257
2000-10-30 03:24:29 +00:00
360675f54b lots of i18n fixes
svn path=/trunk/; revision=6143
2000-10-24 05:23:27 +00:00
94f3ed8e3a kill. (create_ondemand_hooks): die. (control_activate): remove hook.
2000-10-18  Michael Meeks  <michael@helixcode.com>

	* folder-browser-factory.c (register_ondemand): kill.
	(create_ondemand_hooks): die.
	(control_activate): remove hook.

	* test-mail.c (create_container): kill old UI handler.

svn path=/trunk/; revision=6020
2000-10-19 03:07:02 +00:00
ee5eeb1dd2 No, we REALLY dont want to perform an immediate search as the keys are
2000-10-18  Not Zed  <NotZed@HelixCode.com>

        * folder-browser.c (folder_browser_gui_init): No, we REALLY dont
        want to perform an immediate search as the keys are pressed.

        * mail-display.c (on_object_requested): Kill a minor warning with
        a cast.

        * mail-config.c: Include mising ctype.h to kill a warning.

        * message-thread.c (main): Fixed the test case for api changes.

        * message-list.c (message_list_drag_data_get): Set some flags to
        get_folder().  I dont even think this will work because
        mail_tool_get_folder doesn't handle file url's.

        * mail-vfolder.c (vfolder_uri_to_folder): Pass appropriate flags.

        * mail-ops.c (do_setup_folder): Pass appropriate flags.  Hmm,
        whats the difference between setup and create.  *shrug*
        (do_create_folder): Pass appropriate flags to get_folder.  Needs a
        way to specify the index flag.

        * mail-tools.c (mail_tool_get_folder_from_urlname): Changed create
        to flags argument.
        (mail_tool_get_local_inbox_url): Add an index argument.
        (mail_tool_get_local_inbox): honour index flag.
        (mail_tool_get_inbox): Changed for api change.
        (mail_tool_uri_to_folder): Fixed calls to store_get_folder();

        * mail-local.c (load_metainfo): Added an indexed field to the metainfo.
        (save_metainfo): And save it too.
        (do_reconfigure_folder): Honour index flag when creating the new
        folder.  Do not open the old folder with an index at all.
        (mail_local_map_uri): Add an index argument - tells if the mbox is
        indexed.
        (mail_tool_local_uri_to_folder): Create & pass flags properly.
        (#include gnome.h): Dont include all of gnome, just what we use,
        and explicity include xml-memory, so we get xmlFree().

svn path=/trunk/; revision=5979
2000-10-18 06:13:12 +00:00
80237e0c26 Duh, fix the test for the folder name, strstr != strcmp is it.
2000-10-12  Not Zed  <NotZed@HelixCode.com>

        * message-list.c (message_list_setup_etable): Duh, fix the test
        for the folder name, strstr != strcmp is it.

2000-10-10  Not Zed  <NotZed@HelixCode.com>

        * message-list.c (folder_to_cachename): Removed, changed callers
        to use mail_config_folder_to_cachename instead.

        * mail-config.c (mail_config_folder_to_cachename): New utility
        function to get a cache name for a folder.

        * mail-tools.c (mail_tool_do_movemail): Changed to return the path
        to the mbox, rather than opening a folder of it.

        * mail-ops.c (mail_incorporate_messages): Dont bother making the
        pseudo messageinfo, filder_driver_filter_message will do it for
        us.
        (report_status): Callback to report status of filtering operation.
        (do_fetch_mail): Changed significantly - for the api changes to
        the filtering system.  Also now incorporates a mailbox file
        directly, without having to import it into a camel folder first.
        (mail_incorporate_messages): Removed entirely, no longer needed.

        * mail-vfolder.c (vfolder_refresh): Fix for context api changes.
        (vfolder_uri_to_folder): Likewise.

        * folder-browser-factory.c (create_ondemand_hooks): Changed for
        api changes.  Also only adds demand filters to the menu (fixed a
        small logic bug).

svn path=/trunk/; revision=5883
2000-10-12 13:48:36 +00:00
801c54738f remove news specific check. (mail_tool_uri_to_folder): news: -> nntp:
2000-10-04  Chris Toshok  <toshok@helixcode.com>

	* mail-tools.c (mail_tool_get_root_of_store): remove news specific
	check.
	(mail_tool_uri_to_folder): news: -> nntp:

svn path=/trunk/; revision=5718
2000-10-04 21:38:59 +00:00
d697b27b4d destroy our tree_model and remove the root node. also, release_unref our
2000-10-02  Chris Toshok  <toshok@helixcode.com>

	* subscribe-dialog.c (subscribe_dialog_destroy): destroy our
	tree_model and remove the root node.  also, release_unref our
	control and view, and unref the listener.

	* mail-tools.c (mail_tool_uri_to_folder): news url's contain host
	names too, now.

svn path=/trunk/; revision=5690
2000-10-03 05:06:11 +00:00
eec65a9ce0 New async function to filter messages on demand. (do_fetch_mail): Updated
2000-09-06  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (mail_do_filter_ondemand): New async function to
	filter messages on demand.
	(do_fetch_mail): Updated to filter 1 message at a time using the
	new filter-driver code

	* mail-callbacks.c (composer_postpone_cb): Send NULL as the
	message info.
	(run_filter_ondemand): Use mail_do_filter_ondemand instead of
	filter_driver_run

	* mail-tools.c: Removed mail_tool_filter_contents_into and
	mail_tool_fetch_mail_into_searchable as they have now been
	deprecated.

svn path=/trunk/; revision=5225
2000-09-07 03:15:35 +00:00
a86c7ea0ab only call camel_folder_get_message_info if the folder has
* mail-tools.c (mail_tool_move_folder_contents): only call
	camel_folder_get_message_info if the folder has
	summary_capability. Don't hack up a fake CamelMessageInfo:
	append_message will take NULL.

svn path=/trunk/; revision=5201
2000-09-05 20:06:30 +00:00
e6220851e3 Change the "Get Mail" toolbar button to become "Send & Receieve"
2000-09-03  Jeffrey Stedfast  <fejj@helixcode.com>

	* folder-browser-factory.c: Change the "Get Mail" toolbar button
	to become "Send & Receieve"

	* mail-callbacks.c (send_queued_mail): New callback function for
	sending queued mail
	(send_receieve_mail): New callback for Send & Receieve that
	basically just calls send_queued_mail and then fetch_mail

	* mail-ops.c (cleanup_send_mail): Mod to be able to handle a NULL
	composer window
	(setup_send_mail): Modified to handle a NULL composer widget
	(mail_do_send_queue): New convenience async function to send all
	messages in a folder (aka all messages in a queue)

svn path=/trunk/; revision=5184
2000-09-03 05:56:14 +00:00
e625b93246 Since POP3 doesn't implement get_message_info, we need to check for info
2000-09-02  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-tools.c (mail_tool_move_folder_contents): Since POP3
	doesn't implement get_message_info, we need to check for info to
	be NULL. In this case, we need to make our own info structure to
	pass to append_message and then remember to free it
	afterward. Should we even bother with get_message_info? And if so,
	should we then implement get_message_info for POP3?

svn path=/trunk/; revision=5182
2000-09-02 19:44:09 +00:00
fce353e596 Add more user-friendly progress messages from the friendly folks at Helix Code (TM)
svn path=/trunk/; revision=5076
2000-08-28 15:02:23 +00:00
fd017fc993 Display the number of messages downloaded starting from one instead of
zero.

Improve the behavior of the mail view in a separate window by reusing
the same size as the last resize (we could have a better policy, but
this should be enough for now).  Also, create the toolbar the right
way so that we respect the global GNOME settings without doing it
manually.

svn path=/trunk/; revision=5075
2000-08-28 14:58:25 +00:00
906a178ce8 Goodbye, GDK_THREADS!
svn path=/trunk/; revision=5074
2000-08-28 14:36:26 +00:00
37471a4d52 Start adding progress info; make flag_all_messages camel-safe; make the no new mail dialog more descriptive.
svn path=/trunk/; revision=5016
2000-08-24 19:52:24 +00:00
0b9b384a2b Fix GDK_THREADS_entering and leaving, hopefully once and for all. Genericify the recursive-store-loading. Load stores when they're added to the config page.
svn path=/trunk/; revision=5005
2000-08-24 17:22:12 +00:00
130bb0e571 Automatically connect services when given a valid URL (should hopefully disconnect, too); remove the old movemail folder correctly.
svn path=/trunk/; revision=4965
2000-08-22 20:09:11 +00:00
7cf30eb792 Filtering on demand! booyeah!
svn path=/trunk/; revision=4864
2000-08-17 17:42:21 +00:00
533f3d7407 Close the pipes when finished; add i18n
svn path=/trunk/; revision=4846
2000-08-15 19:35:59 +00:00
c1f24d07e4 Updated to reflect changes to mail_do_scan_subfolders
2000-08-13  Jeffrey Stedfast  <fejj@helixcode.com>

	* component-factory.c (create_news_storage): Updated to reflect
	changes to mail_do_scan_subfolders
	(create_imap_storage): Same.

	* mail-ops.c (mail_do_scan_subfolders): No longer takes an
	add_INBOX argument

svn path=/trunk/; revision=4795
2000-08-13 04:23:42 +00:00
6d313c9f85 Don't ref the store returned from camel_session_get_store. It's already
* mail-tools.c (mail_tool_get_folder_from_urlname): Don't ref the
	store returned from camel_session_get_store. It's already reffed.
	(mail_tool_get_root_of_store): Ditto.
	(mail_tool_send_via_transport): Remove some commented-out code and
	fix it to not leave the transport connected if sending fails.

svn path=/trunk/; revision=4783
2000-08-12 21:59:41 +00:00
4824927269 Put the dont-try-to-get-mail-from-imap-sources check into a better spot
svn path=/trunk/; revision=4750
2000-08-11 19:07:13 +00:00
f0cbd6a20b Add a function to return a useful name for a folder (not just "mbox" or
* mail-tools.c (mail_tool_get_folder_name): Add a function to
	return a useful name for a folder (not just "mbox" or "mh" for
	any local folder.)

	* mail-ops.c: Use mail_tool_get_folder_name rather than
	folder->full_name when printing folder names.

svn path=/trunk/; revision=4733
2000-08-11 14:41:04 +00:00