Commit Graph

361 Commits

Author SHA1 Message Date
a273803fab What if message info is NULL?
2000-07-19  Jeffrey Stedfast  <fejj@helixcode.com>

	* message-thread.c (thread_messages): What if message info is NULL?

svn path=/trunk/; revision=4222
2000-07-19 17:34:08 +00:00
237f2dc92b Initial code to support IMAP folders that don't use "/" as a directory
2000-07-16  Jeffrey Stedfast <fejj@helixcode.com>

	* folder-browser.c, component-factory.c: Initial code to support
	IMAP folders that don't use "/" as a directory separator.

svn path=/trunk/; revision=4185
2000-07-17 03:46:26 +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
6746c025d5 put a <p> at the end of the header table. (I think there used to be
* mail-format.c (write_headers): put a <p> at the end of the
	header table. (I think there used to be whitespace after it, but
	then some gtkhtml change got rid of it...)
	(handle_text_plain): Don't do this <PRE>. Instead, CONVERT_NL and
	CONVERT_SPACES and wrap it in <TT>. Now if the sender didn't
	include any newlines, it will be wrapped to the width of the
	window instead of extending off into infinity.

svn path=/trunk/; revision=4168
2000-07-14 21:13:47 +00:00
db53781003 Only unref the folder if it's been set.
* message-list.c (message_list_destroy): Only unref the folder if
	it's been set.

	* folder-browser.c (folder_browser_destroy): Only sync the folder
	if it's been set.

svn path=/trunk/; revision=4162
2000-07-14 00:25:01 +00:00
c79e70871b s/CAMEL_SERVICE_NEED_HOST/CAMEL_SERVICE_URL_NEED_HOST.
2000-07-13  Jonathan Blandford  <jrb@redhat.com>

	* mail-config.c (create_transport): s/CAMEL_SERVICE_NEED_HOST/CAMEL_SERVICE_URL_NEED_HOST.

Fix obvious typo in code.

svn path=/trunk/; revision=4149
2000-07-13 18:36:11 +00:00
36485a36d8 Add a "gboolean required" argument, and set its value on the entry.
* mail-config.c (add_row): Add a "gboolean required" argument, and
	set its value on the entry.
	(create_source, create_transport): Create rows for URL elements if
	the URL ALLOWs them. Mark them required if it NEEDs them.
	(service_note_doneness): Only require the required fields to be
	filled in.

	Now the IMAP config page allows the user to enter a path, but
	doesn't require it.

svn path=/trunk/; revision=4148
2000-07-13 17:20:34 +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
247366f851 fix some cut & paste bung.
2000-07-12  Chris Toshok  <toshok@helixcode.com>

	* mail-config.c (providers_config_new): fix some cut & paste bung.

svn path=/trunk/; revision=4126
2000-07-12 22:17:23 +00:00
c2f5cf9966 add "message/news" to the mime_function_table using the same handler as
2000-07-12  Chris Toshok  <toshok@helixcode.com>

	* mail-format.c (setup_function_table): add "message/news" to the
	mime_function_table using the same handler as message/rfc822.

svn path=/trunk/; revision=4122
2000-07-12 21:26:45 +00:00
355d3fae66 add news server tab to dialog.
2000-07-12  Chris Toshok  <toshok@helixcode.com>

	* mail-config.glade*: add news server tab to dialog.

	* mail-config.c (on_NewsServerConfigDialogButton_clicked): new function.
	(on_clistNewsServers_select_row): new function.
	(on_cmdNewsServersAdd_clicked): new function.
	(on_cmdNewsServersEdit_clicked): new function.
	(on_cmdNewsServersDelete_clicked): new function.
	(providers_config_new): mirror the source tab's code to fill in
	the news server tab.
	(write_config): save out the news server.
	(create_news_server_config_dialog): new function.
	(create_news_server_page): new function.

svn path=/trunk/; revision=4115
2000-07-12 18:24:42 +00:00
8f6fcc14fb Fix bug #390: default attachment save dir should be ~
svn path=/trunk/; revision=4108
2000-07-12 15:11:52 +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
f61cf36756 Disable Search capability menu/entry if folder doesn't support it.
2000-07-11  Jeffrey Stedfast  <fejj@helixcode.com>

	* 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=4097
2000-07-11 20:42:27 +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
642c7db8af Work with both current and 0.15 bonobo
* folder-browser-factory.c (control_activate): Work with both
	current and 0.15 bonobo

svn path=/trunk/; revision=4054
2000-07-10 21:23:35 +00:00
ba8853311f Increase shareholder value.
svn path=/trunk/; revision=4052
2000-07-10 20:58:32 +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
b3bdc8f5ea 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.

svn path=/trunk/; revision=4047
2000-07-10 20:13:59 +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
76bfeb54e4 Fix syncing of the mailbox on exit so that it's done on destruction of
the corresponding FolderBrowser instead of using the "owner_unset"
signel (the latter was broken, because the FolderBrowser is destroyed
before "owner_unset" is emitted, so we have no chance to sync at that
point).

svn path=/trunk/; revision=4038
2000-07-10 16:37:55 +00:00
f58676daaf Switched from ETable to ETableScrolled.
2000-07-10  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c, message-list.h: Switched from ETable to
	ETableScrolled.

svn path=/trunk/; revision=4034
2000-07-10 11:04:39 +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
b90d829757 Fix a bug in previous commit that could cause infinite loops
svn path=/trunk/; revision=4023
2000-07-09 22:39:34 +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
173e577c05 Remove setting of dnd_code since that's handled internally to ETable.
2000-07-09  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c: Remove setting of dnd_code since that's handled
	internally to ETable.

svn path=/trunk/; revision=4014
2000-07-09 14:28:10 +00:00
10b1fc590b Fix up the pageup/pagedown increment a bit.
* folder-browser.c (etable_key): Fix up the pageup/pagedown
	increment a bit.

svn path=/trunk/; revision=4001
2000-07-09 03:30:47 +00:00
1cc1f0a7a7 Add a "Threaded Message List" item to the "View" menu.
* folder-browser-factory.c (control_activate): Add a "Threaded
	Message List" item to the "View" menu.

	* message-list.c (message_list_toggle_threads): Handler for that.
	(build_flat): New function to build a "flat" message list using
	the tree model.
	(message_list_regenerate): Build tree or flat message list
	depending on the global setting.

svn path=/trunk/; revision=3999
2000-07-09 03:06:56 +00:00
541c905279 fix a "Re:" parsing bug
* message-thread.c (get_root_subject): fix a "Re:" parsing bug

svn path=/trunk/; revision=3998
2000-07-09 03:03:50 +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
a4e0069b9c Move the "Expunge" command to the "Actions" menu.
svn path=/trunk/; revision=3987
2000-07-09 01:08:47 +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
1ffcdce023 Small fix to stop uid data from being set on a message-list tree node when
2000-07-08  Jeffrey Stedfast  <fejj@helixcode.com>

	* message-list.c (build_tree): Small fix to stop uid data from
	being set on a message-list tree node when it didn't correspond
	to an actual message.

svn path=/trunk/; revision=3978
2000-07-08 21:00:09 +00:00
9933ddf368 Fix Jeff's FIXME: This does get called with out-of-range data sometimes,
* message-list.c (get_message_info): Fix Jeff's FIXME: This does
	get called with out-of-range data sometimes, so we do need the
	check. Use e_table_model_row_count to get the actual right answer.

svn path=/trunk/; revision=3976
2000-07-08 18:28:01 +00:00
fffc023e64 This wasn't quite right, it will now work but still isn't perfect. See
2000-07-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* message-list.c (get_message_info): This wasn't quite right, it
	will now work but still isn't perfect. See FIXME comment.

svn path=/trunk/; revision=3965
2000-07-07 22:43:31 +00:00
0c9c8a55f8 (sort_node): sort the tree by the original order of the messages
in the folder rather than by date.

svn path=/trunk/; revision=3963
2000-07-07 21:54:14 +00:00
2b29d7310a Add another argument "clast" pointing to the container before the current
* message-thread.c (remove_node): Add another argument "clast"
	pointing to the container before the current one in the list,
	which it can update if that turns out to be the one that it
	removed.
	(group_root_set): Update for remove_node change, and remove both
	nodes in the "subjects are common" case. Fixes a bug that would
	cause the message list to be truncated if this rule was invoked.

svn path=/trunk/; revision=3961
2000-07-07 21:21:16 +00:00
2d33aa8a77 Lots of changes. Store uids as node data on the tree nodes and use those
* message-list.c: Lots of changes. Store uids as node data on the
	tree nodes and use those rather than rows where possible. (The
	concept of "row" is just getting too complicated.) Get rid of the
	summary_table, because given a uid we can call
	camel_folder_get_message_info, which makes more sense than keeping
	a separate uid->row hash table ourselves.

	(get_message_info): update
	(get_message_row): removed
	(ml_col_cound, ml_row_count, ml_value_at, ml_set_value_at,
	ml_cell_is_editable, ml_duplicate_value, ml_free_value,
	ml_initialize_value, ml_value_is_empty, ml_value_to_string):
	Removed. We always use the tree model now.
	(message_list_init): Remove the non-tree code.
	(build_tree): store uids in the tree rather than row numbers,
	and build the message_list->uid_rowmap to map from uids to rows
	when needed.
	(message_list_regenerate): Renamed from _set_search, since it's
	used to redraw in non-search cases too.
	(message_changed): Use the uid_rowmap to get a model row number.

	* message-thread.c (thread_messages): Change the interface on this
	to work with the new MessageList.

	* folder-browser.c (search_set, folder_browser_clear_search):
	s/message_list_set_search/message_list_regenerate/

svn path=/trunk/; revision=3960
2000-07-07 21:15:11 +00:00
a4a1a93648 Handle a row number of -1 properly.
2000-07-07  Christopher James Lahey  <clahey@helixcode.com>

	* message-list.c (get_message_info): Handle a row number of -1
	properly.

svn path=/trunk/; revision=3947
2000-07-07 16:13:37 +00:00
2fd4f883fa Map tree model row numbers to summary row numbers. (ml_tree_value_at,
* message-list.c (get_message_info): Map tree model row numbers to
	summary row numbers.
	(ml_tree_value_at, ml_tree_set_value_at,
	ml_tree_is_cell_editable): So don't do that here.

svn path=/trunk/; revision=3938
2000-07-07 03:07:16 +00:00
33df4eafbd Glade files for the configuration dialog.
2000-07-06  JP Rosevear  <jpr@arcavia.com>

	* mail-config.glade*: Glade files for the configuration dialog.

	* mail-config.c (providers_config_new): Build the dialog with
	glade.

svn path=/trunk/; revision=3933
2000-07-07 01:13:14 +00:00
d538e1e107 include GCONF_CFLAGS for gconf_init
svn path=/trunk/; revision=3932
2000-07-07 00:49:57 +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
67a7089ea2 gtkhtmllib_init is no more. Call gconf_init directly instead.
* main.c (main): gtkhtmllib_init is no more. Call gconf_init
	directly instead.

svn path=/trunk/; revision=3930
2000-07-07 00:41:10 +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
7ce3b0a729 Add a workaround for a small gnome-vfs 0.2 bug so we don't need to require
* mail-identify.c: Add a workaround for a small gnome-vfs 0.2 bug
	so we don't need to require CVS gnome-vfs.

svn path=/trunk/; revision=3924
2000-07-06 17:05:56 +00:00