Commit Graph

227 Commits

Author SHA1 Message Date
4f1ecbb64b Remove hack to pass the storage around.
2000-07-29  Not Zed  <NotZed@HelixCode.com>

        * component-factory.c (create_view): Remove hack to pass the
        storage around.

        * folder-browser-factory.c (control_activate): Changed to call
        renamed vfolder editor.

        * mail-ops.c (vfolder_edit_vfolders): renamed from vfolder_edit,
        call new edit function.
        (vfolder_editor_clicked): Removed.
        (filter_druid_clicked):
        (filter_edit): Updated for api change.
        (real_fetch_mail): Fixed up for api change and fucked up indent.
        (filter_get_folder): callback for filter driver.

        * mail-vfolder.c: New file to manage virtual folders.

svn path=/trunk/; revision=4417
2000-07-30 03:21:16 +00:00
121d056d45 New function to create composer with sig file set.
2000-07-28  JP Rosevear  <jpr@arcavia.com>

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

2000-07-29  JP Rosevear  <jpr@arcavia.com>

	* mail-format.c (mail_generate_reply): Use new mail config stuff

	* component-factory.c (create_imap_storage): Use new mail config
	stuff
	(create_news_storage): ditto

	* evolution-mail.schemas: Gconf schema for evolution mail

	* mail-config-druid.glade: Gladification of config druid

	* mail-config.h: New header with config structs.

	* mail-config.c: Rewrite of GUI configuration tools to use
	new config structs.  Stores multiple identities and sources now.
	Still only uses the first one found.
	(mail_config_fetch): Returns MailConfig struct to caller
	for configuration queries.
	(mail_config): Renamed function to show mail config dialog.
	(mail_config_druid): Renamed function to show mail config druid.

	* mail-ops.c (create_msg_composer): Use
	e_msg_composer_new_with_sig_file and new config stuff
	(check_configured): Use new config stuff
	(fetch_mail): ditto
	(composer_send_cb): ditto

svn path=/trunk/; revision=4413
2000-07-29 06:04:24 +00:00
f34353458d Added mark_all_seen(), to mark every message in the list with
2000-07-28  Cody Russell  <bratsche@gnome.org>
        * mail-ops.c, mail.h: Added mark_all_seen(), to mark every
        message in the list with CAMEL_MESSAGE_SEEN.

        * folder-browser-factory.c: Added "Actions/Mark all seen".

svn path=/trunk/; revision=4412
2000-07-29 04:20:38 +00:00
783b4b8a49 Don't create the tmp_mbox before calling movemail, because the external
* mail-ops.c (real_fetch_mail): Don't create the tmp_mbox before
	calling movemail, because the external movemail requires it to not
	exist. Contrariwise, delete it in the cleanup code if it's empty.
	Update for camel_movemail interface change. Do the "No new
	messages" dialog in the mbox case as well as the remote mail
	issue.

svn path=/trunk/; revision=4356
2000-07-26 18:32:35 +00:00
f062013d51 s/struct refile_data/struct move_data (real_move_msg): Renamed from
2000-07-26  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c: s/struct refile_data/struct move_data
	(real_move_msg): Renamed from real_refile_msg()
	(move_msg): Renamed from refile_msg()

	* folder-browser-factory.c: Changed Refile to Move.

svn path=/trunk/; revision=4347
2000-07-26 16:09:18 +00:00
43ef719142 Fix crash on NULL current_message when replying.
svn path=/trunk/; revision=4319
2000-07-25 19:14:03 +00:00
e1ecbdf489 Update for CamelFolder API changes. (Certain functions no longer take a
* message-list.c (mark_msg_seen, ml_tree_set_value_at,
	message_list_regenerate): Update for CamelFolder API changes.
	(Certain functions no longer take a CamelException.)

	* mail-ops.c (real_fetch_mail, real_send_mail, real_delete_msg):
	ditto

	* component-factory.c (real_create_imap_storage,
	real_create_news_storage): ditto

svn path=/trunk/; revision=4305
2000-07-25 02:47:18 +00:00
e3f8e22df0 Add a "Send HTML mail" toggle in the message composer.
svn path=/trunk/; revision=4284
2000-07-23 13:55:13 +00:00
77bd9350a9 Put the version number in the `X-Mailer:' header instead of just
"Developer Preview".

svn path=/trunk/; revision=4179
2000-07-16 04:32:01 +00:00
2ffef2c837 Back to the old way to avoid g_warnings, yay. Also fix append to send a
2000-07-13  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_fetch_mail): Back to the old way to avoid
	g_warnings, yay. Also fix append to send a flags argument (0)

svn path=/trunk/; revision=4139
2000-07-13 05:44:23 +00:00
bc79d7668d Back to the old way to avoid g_warnings, yay
2000-07-13  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_fetch_mail): Back to the old way to avoid
	g_warnings, yay

svn path=/trunk/; revision=4138
2000-07-13 05:35:29 +00:00
1bdc8787b9 Changed to use camel_folder_move_message_to () rather than get_message ()
2000-07-11  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_fetch_mail): Changed to use
	camel_folder_move_message_to () rather than get_message () and then
	append_message (). This also makes it so we don't have to worry about
	fetching message flags to pass to the new append_message () method.

	* folder-browser.c (folder_browser_load_folder): Disable
	Search capability menu/entry if folder doesn't support it.

	* message-list.c (message_list_regenerate): Don't perform
	a search if the folder doesn't support it.

svn path=/trunk/; revision=4098
2000-07-11 23:52:02 +00:00
7e4c61d7b8 Set the post_send_data flag rather than toggling it. (Maybe we'll need
* mail-ops.c (real_send_mail): Set the post_send_data flag rather
	than toggling it. (Maybe we'll need more control over it later,
	but for now, the only flag we set is "replied", and we want
	that set, not toggled.)

svn path=/trunk/; revision=4096
2000-07-11 20:24:24 +00:00
04073f3c49 kill more debugging messages
* kill more debugging messages

svn path=/trunk/; revision=4050
2000-07-10 20:48:10 +00:00
7e747adb87 Don't multiply free dest_url.
* mail-ops.c (real_fetch_mail): Don't multiply free dest_url.

svn path=/trunk/; revision=4049
2000-07-10 20:40:29 +00:00
e17db743f3 Update message_list_select_next to do either next or previous.
* message-list.c (message_list_select): Update
	message_list_select_next to do either next or previous.

	* folder-browser.c (etable_key): Make 'n' and 'p' do next and
	previous unread message.

	* mail-ops.c (select_first_unread): Update.
	(real_fetch_mail): clean up a bit.

svn path=/trunk/; revision=4046
2000-07-10 20:04:32 +00:00
8844e57744 Fix an unitialized variable error.
svn path=/trunk/; revision=4045
2000-07-10 19:28:20 +00:00
25b97b309c Fixed broken POP fetching
2000-07-10  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_fetch_mail): Fixed broken POP fetching

svn path=/trunk/; revision=4042
2000-07-10 19:13:24 +00:00
f587f3d4a5 Fixed movemail so that it too would deliver to Inbox.
2000-07-10  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_fetch_mail): Fixed movemail so that it too would
	deliver to Inbox.

svn path=/trunk/; revision=4029
2000-07-10 08:02:50 +00:00
5a4f9250eb Don't g_warn if the user selects a fake tree parent.
* message-list.c (get_message_info): Don't g_warn if the user
	selects a fake tree parent.
	(message_list_select_next): Ignore fake rows
	(build_tree): Store the "root_subject" for fake rows
	(ml_tree_value_at): Display the correct subject for fake rows.
	(on_cursor_change_cmd): Update for the other changes and set
	cursor_uid to NULL when the cursor is on a fake row.

	* mail-ops.c (reply): Don't try to reply when no (real) message is
	selected.
	(forward_msg): Ditto.

svn path=/trunk/; revision=4021
2000-07-09 16:06:15 +00:00
cef0acf726 Always dump incoming messages to Inbox (assuming not filtered to another
2000-07-08  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (real_fetch_mail): Always dump incoming messages to
	Inbox (assuming not filtered to another location).

svn path=/trunk/; revision=3996
2000-07-09 02:29:50 +00:00
2f2ff6d4cc Deal with having multiple selected messages.
* mail-ops.c (forward_msg): Deal with having multiple selected
	messages.

	* mail-format.c (mail_generate_forward): Removed. (Integrated into
	forward_msg)

svn path=/trunk/; revision=3982
2000-07-08 23:40:06 +00:00
443433db56 fix warnings.
* folder-browser-factory.c, folder-browser.c, mail-ops.c,
	message-list.c: fix warnings.

svn path=/trunk/; revision=3931
2000-07-07 00:47:24 +00:00
647cc8b636 New function to select the first message on or after the given row that
* message-list.c (message_list_select_next): New function to
	select the first message on or after the given row that meets
	certain flag criteria.

	* folder-browser.c (etable_key): call message_list_select_next to
	select next non-deleted message after Delete.

	* mail-ops.c (real_fetch_mail): call message_list_select_next to
	select first unread message in current folder if it changes.
	(real_delete_msg): Remove the code to move the etable cursor. It
	only makes sense really if you deleted the message with the
	keyboard, so do it from there.

svn path=/trunk/; revision=3927
2000-07-06 21:33:07 +00:00
1e8c9c87a0 Well, delete, expunge, appear broken, it sorts (initially) at least now.
* message-thread.c (sort_thread): sort messages based on date for
	the initial sort order.
	(thread_messages_free): Implement.

	(message_list_init): set the root node invisible afterall.
	(message_list_set_search): Clear the old tree before putting in a
	new one.

svn path=/trunk/; revision=3922
2000-07-06 12:32:55 +00:00
2b06fe7a4d Remove hack to redisplay the inbox, since folder_changed signals will now
* mail-ops.c (real_fetch_mail): Remove hack to redisplay the
	inbox, since folder_changed signals will now be emitted
	appropriately.

svn path=/trunk/; revision=3866
2000-07-03 01:22:27 +00:00
480cd7ee76 Pass mail_uri_to_folder and rules to filter_driver_new.
* mail-ops.c (real_fetch_mail):
	(vfolder_editor_clicked):
	* component-factory.c (create_vfolder_storage):
	Pass mail_uri_to_folder and rules to filter_driver_new.

svn path=/trunk/; revision=3860
2000-07-02 23:18:17 +00:00
fbc6a557a6 Added an extra @allowed_types parameter to the shell's folder
selection dialog, and update the code that uses it accordingly.

svn path=/trunk/; revision=3854
2000-07-02 04:46:36 +00:00
ee429c5ada Updated to reflect camel-folder changes.
2000-07-01  Jeffrey Stedfast  <fejj@helixcode.com>

	* message-list.c (get_message_info):
	(select_msg): Updated to reflect camel-folder changes.

	* mail-ops.c (real_fetch_mail): Modified to reflect camel-folder
	changes.

svn path=/trunk/; revision=3844
2000-07-01 04:55:46 +00:00
8a2058e527 Use gnome-print to do a print preview.
* mail-ops.c (print_msg): Use gnome-print to do a print preview.

	* folder-browser-factory.c: Hook up "Print" button.

svn path=/trunk/; revision=3835
2000-06-30 21:33:54 +00:00
6f95a96083 New function, a wrapper around e_table_selected_row_foreach, which calls
* message-list.c (message_list_foreach): New function, a wrapper
	around e_table_selected_row_foreach, which calls the callback
	function with UIDs rather than row numbers.

	* folder-browser-factory.c: Remove never-used "Find" button from
	the toolbar and replace it with "Refile". (We need a better icon
	for this...). Hook up "Refile" to "refile_msg".

	* mail-ops.c (refile_msg): Call the shell's user_select_folder
	routine, and then use message_list_foreach and real_refile_msg to
	do the work.
	(delete_msg): Update to use message_list_foreach.

	* folder-browser.c (mail_uri_to_folder): new function, extracted
	from folder_browser_load_folder, to turn a URI into a folder.
	(folder_browser_load_folder): Use it.

svn path=/trunk/; revision=3833
2000-06-30 20:05:47 +00:00
263cc3a01f use the ETable row_selection signal to track how many rows are selected.
* message-list.c (on_row_selection): use the ETable row_selection
	signal to track how many rows are selected. Eventually we will use
	this info to disable toolbar buttons when you have too few/too
	many messages selected, but the current toolbar widget doesn't
	allow that.

	* message-list.h, message-list.c, mail-ops.c: Change selected_row
	and selected_uid fields of MessageList to cursor_row and
	cursor_uid to be more correct according to the new ETable
	interfaces.

svn path=/trunk/; revision=3829
2000-06-30 17:46:48 +00:00
f39e17a1c7 oops, corrected the gtk/gnome casts
svn path=/trunk/; revision=3813
2000-06-29 22:05:59 +00:00
fa91d3e6a7 Clean up compile warnings (real_fetch_mail): Fetching from IMAP should do
2000-06-29  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-ops.c (delete_msg): Clean up compile warnings
	(real_fetch_mail): Fetching from IMAP should do nothing

svn path=/trunk/; revision=3811
2000-06-29 22:02:10 +00:00
5ca5da26b5 Handle multiple deletes (change by Peter Williams.)
2000-06-29  Christopher James Lahey  <clahey@helixcode.com>

	* mail-ops.c: Handle multiple deletes (change by Peter Williams.)

svn path=/trunk/; revision=3809
2000-06-29 21:31:44 +00:00
d2bd0132f7 Changed "Send" to "Compose" to avoid user confusion. Compose is a little
2000-06-29  Jeffrey Stedfast  <fejj@helixcode.com>

	* folder-browser-factory.c: Changed "Send" to "Compose" to
	avoid user confusion. Compose is a little more intuitive.

	* mail-ops.c (compose_msg): Renamed to avoid confusion

svn path=/trunk/; revision=3805
2000-06-29 21:06:28 +00:00
3649d5dc6d From mail:
2000-06-29  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c, mail-ops.c: Changed the name of
	e_table_select_row to e_table_set_cursor_row.

From widgets/e-table:

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

	* e-table-click-to-add.c: Made this appear a bit better.

	* e-table-defines.h: Cleaned this up a bit, added
	ETableForeachFunc.

	* e-table-group-container.c, e-table-group-leaf.c,
	e-table-group.c, e-table-group.h, e-table-item.c, e-table-item.h,
	e-table.c, e-table.h: Changed e_table_select_row to
	e_table_set_cursor_row.  Changed e_table_get_selected_view_row to
	e_table_get_cursor_row.  Added e_table_selected_row_foreach.

	* e-table-header-item.c: Fixed some warnings.

	* e-table-sorted-variable.c: Removed some unneeded debugging print
	statments.

	* e-tree-example-1.c: Changed e_table_get_selected_view_row to
	e_table_get_cursor_row.

svn path=/trunk/; revision=3799
2000-06-29 19:22:24 +00:00
e923d2eea9 Make the broken threads optional
svn path=/trunk/; revision=3740
2000-06-26 18:21:45 +00:00
aa68bd85f1 Land most of the stuff to move fetch_mail, send_mail, expunge_folder, init_imap, and init_news to async operation.
svn path=/trunk/; revision=3711
2000-06-23 19:07:01 +00:00
4e9d56a6c0 Revert Peter's change and Chris's fix to it, since it looks like Peter
probably didn't actually intend to commit it yet...

svn path=/trunk/; revision=3699
2000-06-22 21:44:40 +00:00
c422e1f742 new function, passed as arg to mail_operation_try. (fetch_mail): add
2000-06-22  Chris Toshok  <toshok@helixcode.com>

	* mail-ops.c (fetch_mail_cleanup): new function, passed as arg to
	mail_operation_try.
	(fetch_mail): add cleanup func arg.

svn path=/trunk/; revision=3698
2000-06-22 21:42:24 +00:00
d8962e3587 Prettify the progress dialog a bit.
svn path=/trunk/; revision=3689
2000-06-22 13:42:25 +00:00
0f56e5e54e Add a confirmation dialog box for when the user tries to send a
message without a subject.

svn path=/trunk/; revision=3644
2000-06-20 04:59:16 +00:00
9c21067261 new function to do a uid to row mapping. (mark_msg_seen, select_msg,
* message-list.c (get_message_row): new function to do a uid to
	row mapping.
	(mark_msg_seen, select_msg, message_changed,
	message_list_set_folder): Update for Camel flag changes.
	(on_cursor_change_cmd): Rename "row_to_select" to "selected_row",
	and keep a "selected_uid" as well.

	* mail-ops.c (composer_send_cb): Update for Camel flag changes,
	and fix some memory-handling bugs. (Free the post_send_data when
	the composer is destroyed, not when the user clicks "send", which
	could happen never, or more than once.)
	(delete_msg): Update for Camel flag changes, and fix the "holding
	down the delete key skips some messages" bug.

svn path=/trunk/; revision=3600
2000-06-16 23:11:10 +00:00
0f13b8f0bc Update for CamelFolder changes.
* mail-ops.c (fetch_mail):
	* component-factory.c (owner_unset_cb):
	* message-list.c (message_list_set_folder): Update for CamelFolder
	changes.

svn path=/trunk/; revision=3583
2000-06-15 22:22:20 +00:00
94f0df746e New function to revert back to non-searching mode.
* folder-browser.c (folder_browser_clear_search): New function to
	revert back to non-searching mode.

	* mail-ops.c (fetch_mail): Use folder_browser_clear_search.

svn path=/trunk/; revision=3576
2000-06-15 17:31:53 +00:00
86c38b418e if the document requests an unknown URL, it's not an error; just ignore
* mail-display.c (on_url_requested): if the document requests an
	unknown URL, it's not an error; just ignore the URL.

	* mail-ops.c (fetch_mail): If there's no new mail, tell the user.

svn path=/trunk/; revision=3574
2000-06-15 15:24:40 +00:00
66cfad2033 display error from camel_folder_expunge if there is one.
* mail-ops.c (expunge_folder): display error from
	camel_folder_expunge if there is one.

svn path=/trunk/; revision=3500
2000-06-10 01:16:26 +00:00
d4d2509314 close and expunge the source folder after copying it to a local folder.
* mail-ops.c (fetch_mail): close and expunge the source folder
	after copying it to a local folder.

svn path=/trunk/; revision=3493
2000-06-09 19:45:33 +00:00
440b4825e9 Update for folder creation/existence changes.
* mail-ops.c (fetch_mail):
	* folder-browser.c (folder_browser_load_folder): Update for folder
	creation/existence changes.

	* message-list.c (message_list_set_folder): Remove the code to
	create the folder if it doesn't exist, since we don't want to do
	that.

svn path=/trunk/; revision=3455
2000-06-07 00:07:06 +00:00