Commit Graph

227 Commits

Author SHA1 Message Date
362fa53610 Replace mail_do_setup_draftbox, mail_do_setup_outbox, and
* mail-ops.c: Replace mail_do_setup_draftbox,
	mail_do_setup_outbox, and mail_do_setup_sentbox with
	mail_do_setup_folder.
	(do_send_mail, do_send_queue): s/sentbox_folder/sent_folder/

	* component-factory.c (owner_set_cb): Use mail_do_setup_folder,
	rename sentbox_folder to sent_folder, and call
	mail_operation_wait_for_finish after the setup_folder calls in
	case anything needs to use the _folder variables.

svn path=/trunk/; revision=5200
2000-09-05 19:43:08 +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
754164e503 Attach a callback to the postpone signal (send_to_url): Same (mail_reply):
2000-09-01  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-callbacks.c (compose_msg): Attach a callback to the
	postpone signal
	(send_to_url): Same
	(mail_reply): Same
	(forward_msg): Same
	(composer_postpone_cb): Callback function for the postpone signal

	* mail-ops.c (mail_do_setup_outbox): New convenience function to
	load the Outbox folder
	(mail_do_setup_sentbox): Same, but for Sentbox.
	(do_send_mail): Now saves messages in Sentbox if sent successfully
	(mail_do_append_mail): New convenience async function for
	appending messages to a folder

	* component-factory.c: Added outbox_folder and sent_folder
	(owner_set_cb): Call our new convenience functions to load Outbox
	and Sentbox

svn path=/trunk/; revision=5178
2000-09-02 01:44:59 +00:00
61230561ce New convenience function to load the Outbox folder
2000-09-01  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (mail_do_setup_outbox): New convenience function to
	load the Outbox folder
	(mail_do_setup_sentbox): Same, but for Sentbox.
	(do_send_mail): Now saves messages in Sentbox if sent successfully

	* component-factory.c: Added outbox_folder and sent_folder
	(owner_set_cb): Call our new convenience functions to load Outbox
	and Sentbox

svn path=/trunk/; revision=5172
2000-09-01 22:11:47 +00:00
26112575da Changed `Evolution::Storage' so that the displayed name for a folder
is decoupled from its path, and updated all the components
accordingly.

svn path=/trunk/; revision=5159
2000-09-01 06:09:29 +00:00
ba2eaa68b1 Update this and related functions to no longer take a From address. (The
* mail-ops.c (mail_do_send_mail): Update this and related
	functions to no longer take a From address. (The composer deals
	with it itself now.)
	(do_send_mail): Add the Evolution version back to the X-Mailer
	header (this change got lost in the thread migration).

	* mail-callbacks.c (composer_send_cb): Don't re-fetch the From
	address. It's set by the composer now. Don't free the
	post_send_data from here.
	(mail_reply): Attach to the composer's destroy signal to free the
	psd. (The current code would free it more than once if an error
	occurred while trying to send the first time.)

svn path=/trunk/; revision=5102
2000-08-29 18:44:47 +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
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
7f51944599 Fix a deadlock upon checking mail due to new camel_service semantics.
svn path=/trunk/; revision=4984
2000-08-23 19:10:40 +00:00
24feba2033 Whole buncha leak fixes thanks to Purify
svn path=/trunk/; revision=4862
2000-08-17 14:19:02 +00:00
1cd648f355 Use a configurable timeout.
2000-08-16  Richard Hult  <rhult@hem.passagen.se>

 	* mail-ops.c (cleanup_display_message): Use a configurable
timeout.

 	* mail-config.c (mail_config_set_mark_as_seen_timeout): New
function
 	for the settable mark-as-seen timeout.
 	(mail_config_mark_as_seen_timeout): Likewise.
 	(mail_config_write): Write the timeout setting.
 	(config_read): Read timeout setting.

 	* mail-config-gui.c (mail_config): Add option for the settable
 	mark-as-seen timeout.
 	(mail_config_apply_clicked): Likewise.
 	(timeout_changed): New function for the timeout setting.

svn path=/trunk/; revision=4859
2000-08-16 22:56:34 +00:00
c6e25f89a5 Updated russian translation. Fixed typo in mail-ops.c.
svn path=/trunk/; revision=4852
2000-08-16 08:19:17 +00:00
533f3d7407 Close the pipes when finished; add i18n
svn path=/trunk/; revision=4846
2000-08-15 19:35:59 +00:00
e3b786b5cf Add support for copying messages
svn path=/trunk/; revision=4845
2000-08-15 19:10:45 +00:00
377513db1f Compile fix for RH7.0beta from Kenny Graunke <kwg@teleport.com>; unprototype the disabled mail functions
svn path=/trunk/; revision=4836
2000-08-14 15:18:44 +00:00
7f01f3e1d9 Use CORBA_Object_release() instead of CORBA_free() as appropriate, you
doofus.

svn path=/trunk/; revision=4830
2000-08-14 01:00:22 +00:00
e1111e8e76 Fix bug in the folder creation code: CORBA_Object_duplicate() the
CORBA listener before storing it.

svn path=/trunk/; revision=4804
2000-08-13 20:35:44 +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
05a0341981 Lose a reference to the store on purpose. To be fixed later.
* mail-ops.c (do_scan_subfolders): Lose a reference to the store
	on purpose. To be fixed later.

svn path=/trunk/; revision=4794
2000-08-13 04:17:42 +00:00
ffc1f6b79e Don't leak the transport.
* mail-ops.c (do_send_mail): Don't leak the transport.

svn path=/trunk/; revision=4784
2000-08-12 22:06:52 +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
f5b8a56cc1 Freeze/thaw around multi-message folder operations (flag, move)
svn path=/trunk/; revision=4739
2000-08-11 16:15:46 +00:00
562e6437b5 Use camel_service_get_name rather than showing the URL to the user.
* mail-ops.c (describe_fetch_mail): Use camel_service_get_name
	rather than showing the URL to the user.

svn path=/trunk/; revision=4737
2000-08-11 15:51:57 +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
6db1c7d22a Don't call e_setup_base_dir. It was wrong and it doesn't exist any more.
* session.c (session_init): Don't call e_setup_base_dir. It was
        wrong and it doesn't exist any more.

        * component-factory.c (owner_set_cb): Update for changed
        prototype, and record the evolution_homedir. Move call to
        mail_config_init here from session.c so it happens after
        evolution_dir is initialized.

        * mail.h: define "extern char *evolution_dir;" (formerly in
        e-util/e-setup.h)

        * component-factory.c, mail-callbacks.c, mail-config-gui.c,
        mail-config.c, mail-display.c, mail-format.c, mail-ops.c,
        mail-tools.c, session.c: Remove "e-util/e-setup.h" include.

svn path=/trunk/; revision=4712
2000-08-11 00:02:25 +00:00
44b1cb734d Add a "gboolean create" argument to pass to camel_store_get_folder.
* mail-tools.c (mail_tool_get_folder_from_urlname): Add a
	"gboolean create" argument to pass to camel_store_get_folder.

	* mail-ops.c (do_create_folder, do_setup_draftbox):
	* mail-local.c (mail_tool_local_uri_to_folder):
	* mail-vfolder.c (vfolder_uri_to_folder): Add create flag to
	mail_tool_get_folder_from_urlname calls.

svn path=/trunk/; revision=4702
2000-08-10 20:26:41 +00:00
09199ae2ea Show 'no new mail' correctly.
svn path=/trunk/; revision=4699
2000-08-10 19:34:50 +00:00
1ecabb0dc4 Fix the infinite movemail
svn path=/trunk/; revision=4696
2000-08-10 18:46:39 +00:00
8cb514d6dd Merge with camel-async.
svn path=/trunk/; revision=4687
2000-08-10 17:30:50 +00:00
ce31e66ee6 Get the from address set in the composer, if that fails ONLY THEN get the
2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (composer_send_cb): Get the from address set in the
	composer, if that fails ONLY THEN get the default from mail config

	* mail-config.c (mail_config_get_identities): New convenience
	function for getting a list of the configured identities

svn path=/trunk/; revision=4672
2000-08-09 22:19:04 +00:00
3d94ea9337 Changed to only take a FolderBrowser argument
2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-view.c (mail_view_create): Changed to only take a
	FolderBrowser argument

	* mail-ops.c (real_view_msg): Create a new FolderBrowser for each
	message being opened in a new window. Also set the
	message_list->cursor_uid and mail_display->current_message to the
	appropriate values.
	(real_view_msg): Updated to reflect changes in the mail_view_create

	* message-list.c (on_right_click): Nicify a little, add in a menu
	separator between VFolder and Filter stuff.

	* mail-ops.c (real_view_msg): Set the UID of the message that is
	being displayed

svn path=/trunk/; revision=4662
2000-08-09 19:57:28 +00:00
c8712d8115 Create a new FolderBrowser for each message being opened in a new window.
2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_view_msg): Create a new FolderBrowser for each
	message being opened in a new window. Also set the
	message_list->cursor_uid and mail_display->current_message to the
	appropriate values.

svn path=/trunk/; revision=4660
2000-08-09 19:49:20 +00:00
4bbaf023cb Nicify a little, add in a menu separator between VFolder and Filter stuff.
2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

	* message-list.c (on_right_click): Nicify a little, add in a menu
	separator between VFolder and Filter stuff.

svn path=/trunk/; revision=4657
2000-08-09 19:33:18 +00:00
5d297a7ac9 Set the UID of the message that is being displayed
2000-08-09  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_view_msg): Set the UID of the message that is
	being displayed

svn path=/trunk/; revision=4655
2000-08-09 19:14:59 +00:00
e7697db4fc Fixed some warnings.
2000-08-09  Christopher James Lahey  <clahey@helixcode.com>

	* mail-display.c, mail-format.c, mail-ops.c: Fixed some warnings.

	* message-list.c: Fix the call to e_popup_menu_run to match the
	new signature.

svn path=/trunk/; revision=4634
2000-08-09 05:30:37 +00:00
b9a9cd3a86 New convenience function with params of a normal Gtk callback function. We
2000-08-08  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (view_msg): New convenience function with params of a
	normal Gtk callback function. We also now create a new
	FolderBrowser object so that the message-view window isn't tied to
	the display in the main window
	(view_message): Now calls view_msg (this function is a bonobo
	callback and can't be used with gtk widgets)
	(edit_msg): Same idea as view_msg()
	(edit_message): Again, same as view_message()

	* message-list.c (on_right_click): Callback for creating an
	e-popup-menu
	(message_list_init): Added a right_click event to trigger a pop-up
	menu to be displayed

svn path=/trunk/; revision=4619
2000-08-09 01:09:55 +00:00
01f333dee5 Add "Don't delete messages from server" button to remote SOURCEs that
* mail-config-gui.c: Add "Don't delete messages from server"
	button to remote SOURCEs that aren't STORAGEs (ie, POP).
	(provider_list): Only list SOURCEs. (ie, not mh)

	* mail-config.c: Save/load "keep_on_server" flag.

	* mail-ops.c (fetch_remote_mail): New function, split out of
	real_fetch_mail. Deals with copying mail from a remote server into
	a temporary mbox, possibly using a CamelUIDCache to leave the
	messages on the server.

svn path=/trunk/; revision=4617
2000-08-09 00:13:32 +00:00
8fed71251f Fix build by allowing includes for e-table dir
2000-08-08  JP Rosevear  <jpr@helixcode.com>

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

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

	* mail-ops.c (check_configured): Use config accessors
	(fetch_mail): ditto
	(composer_send_cb): ditto
	(create_msg_composer): ditto

	* mail-config-gui.h: Update API

	* mail-config.h: Update API

	* mail-config.c: Add accessor functions
	(mail_config_is_configured): accessor function
	(mail_config_get_default_identity): ditto
	(mail_config_get_default_source): ditto
	(mail_config_get_transport): ditto
	(mail_config_send_html): ditto
	(identity_copy): Make public
	(identity_destroy): ditto
	(identity_destroy_each): ditto
	(service_copy): ditto
	(service_destroy): ditto
	(service_destroy_each): ditto
	(mail_config_init): Rename from init_config and make public
	(mail_config_clear): Rename from clear_config and make public
	(mail_config_read): Rename from read_config and make public
	(mail_config_write): Reanme from write_config and make public

	* main.c (main): Call mail_config_init.

	* mail.h: Include mail-config-gui.h

	* mail-config-gui.c: Move config gui stuff here.
	(source_dialog): Kill memory leak from debug leftovers.
	Make sure returned source is NULL by default

svn path=/trunk/; revision=4592
2000-08-08 07:08:48 +00:00
b9eece78e6 Redone to show a dialogue first, and show progress of whats happening as
2000-08-07  Not Zed  <NotZed@HelixCode.com>

        * mail-local.c (local_reconfigure_folder): Redone to show a
        dialogue first, and show progress of whats happening as its done.

        * Makefile.am (glade_DATA): Added local-config.glade, for mailbox
        reconfig dialogue.

2000-08-04  Not Zed  <NotZed@HelixCode.com>

        * folder-browser.c (mail_uri_to_folder): Use local_uri_to_folder()
        for local uri's (file://).

        * mail-local.c (local_uri_to_folder): Handle looking up folder
        storage type before opening the store/folder.
        (local_reconfigure_folder): Function to reconfigure the format of
        a local mailbox into another storage format.

        * Makefile.am (evolution_mail_SOURCES): Added mail-local.c and
        missing mail-vfolder.h.

svn path=/trunk/; revision=4591
2000-08-08 03:55:11 +00:00
573ea91f0c Added mail-view.c
2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* Makefile.am: Added mail-view.c

	* folder-browser-factory.c (control_activate): Adda menu item for
	viewing the message

	* mail-view.c: New file containing methods for viewing messages in
	separate windows

	* mail-ops.c (view_message): New callback for viewing messages in
	a new window.

svn path=/trunk/; revision=4588
2000-08-08 02:08:44 +00:00
725c2912fc Get rid of kludge around subject beginning with spaces.
2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-format.c (write_headers): Get rid of kludge around subject
	beginning with spaces.
	(mail_generate_reply): Get rid of kludge around subject beginning
	with spaces and also use g_strncasecmp instead of strncasecmp for
	portability

	* mail-ops.c (forward_msg): Get rid of kludges around subject
	beginning with spaces.

svn path=/trunk/; revision=4572
2000-08-07 18:24:44 +00:00
520d69a638 Clarify that the input row is a model row, and swap it to a view row when
* message-list.c (message_list_select): Clarify that the input row
	is a model row, and swap it to a view row when finding the
	next/previous row.
	(idle_select_row): Select view row 0, not model row 0.

	* mail-ops.c (select_first_unread): Start from view row 0, not
	model row 0.

svn path=/trunk/; revision=4570
2000-08-07 17:03:06 +00:00
cf0a938afb Renamed from reply_body() so other functions can use it
2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-format.c (mail_get_message_body): Renamed from reply_body()
	so other functions can use it
	(mail_generate_reply): Updated to reflect function name changes

	* mail-ops.c (real_edit_msg): Attach a callback to the send signal

svn path=/trunk/; revision=4564
2000-08-07 08:37:07 +00:00
9739fb5219 New menu item under Actions to allow editing of messages.
2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* folder-browser-factory.c (control_activate): New menu item under
	Actions to allow editing of messages.

	* mail-ops.c (edit_message): New function for editing messages.

svn path=/trunk/; revision=4563
2000-08-07 06:55:53 +00:00
ce5a8e3224 I pity da foo that committed this bug!
svn path=/trunk/; revision=4528
2000-08-04 14:13:27 +00:00
d2856de030 Yay, no more compiler warnings
2000-08-03  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (composer_send_cb): Yay, no more compiler warnings

svn path=/trunk/; revision=4521
2000-08-04 00:25:14 +00:00
7792032178 Check for identity before sending ; remove gconf_init call
svn path=/trunk/; revision=4505
2000-08-03 15:35:09 +00:00
712b10f964 Emit "model_pre_change" where appropriate.
2000-08-02  Christopher James Lahey  <clahey@helixcode.com>

	* mail-ops.c, message-list.c: Emit "model_pre_change" where
	appropriate.

svn path=/trunk/; revision=4475
2000-08-02 17:21:30 +00:00