Commit Graph

215 Commits

Author SHA1 Message Date
f87d11c476 Rename "Save to disk..." to "Save Attachment..."
2002-07-11  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (pixmap_press): Rename "Save to disk..." to "Save
	Attachment..."

svn path=/trunk/; revision=17422
2002-07-11 20:01:32 +00:00
740bddaf61 If we unref'd a current_message, clear the datalist. Don't bother
2002-07-10  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (mail_display_set_message): If we unref'd a
	current_message, clear the datalist. Don't bother connecting to
	the message's finalise signal because something else may own a ref
	to the original message when we replace it with a new one.
	(mail_display_destroy): Only clear the datalist if we have a
	current_message, otherwise it's safe to assume that it is already
	cleared.

svn path=/trunk/; revision=17413
2002-07-10 22:49:14 +00:00
a2ab50c057 Don't ever use the mail-display's current_message, this can cause
2002-07-08  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (redirect): Don't ever use the mail-display's
	current_message, this can cause problems.

	* mail-ops.c (get_message_free): Unref the gotten message. All of
	the callers seemed to think that they didn't have to unref the
	message.

	* mail-display.c (mail_display_set_message): Now refs the message.
	(mail_display_destroy): Unref the current_message if we still have
	ownership of it.

svn path=/trunk/; revision=17387
2002-07-08 22:59:23 +00:00
6256cb6fe9 Don't skip over disabled accounts - put them in the folder tree too.
2002-06-28  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (mail_load_storages): Don't skip over
	disabled accounts - put them in the folder tree too.

svn path=/trunk/; revision=17329
2002-06-28 19:33:21 +00:00
978b21733a Also handle https urls.
2002-06-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (on_url_requested): Also handle https urls.

svn path=/trunk/; revision=17280
2002-06-25 21:50:30 +00:00
4c20fe02c4 The following changes take a great leap toward fixing bug #1042.
2002-06-04  Jeffrey Stedfast  <fejj@ximian.com>

	The following changes take a great leap toward fixing bug #1042.

	* mail-display.c (mail_display_push_content_location): New
	function to push a Content-Location value onto the MailDisplay.
	(mail_display_get_content_location): Gets the current
	Content-Location CamelURL value.
	(mail_display_pop_content_location): Pop the Content-Location off
	the stack.

	* mail-format.c (get_location): Do URL merging if the
	Content-Location isn't a full URL. If the Content-Location doesn't
	exist, pretend the URL is actually the Content-Location URL of our
	parent multipart (assuming it exists). If that doesn't exist, then
	yes - return NULL.
	(handle_multipart_related): Push the Content-Location header value
	of the multipart/related so that we can do URL merging in
	get_location() as we process each of the subparts. When we're
	done, pop it back off the stack.

svn path=/trunk/; revision=17113
2002-06-04 23:58:22 +00:00
153a461c84 Fixed the "Overdue:" string to not contain any HTML tags.
2002-05-20  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (mail_display_render): Fixed the "Overdue:"
	string to not contain any HTML tags.

svn path=/trunk/; revision=16950
2002-05-20 20:07:05 +00:00
a45637985e Don't add any shortcuts here. (mail_config_remove_account): And don't
2002-05-10  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config.c (mail_config_add_account): Don't add any shortcuts
	here.
	(mail_config_remove_account): And don't remove them here. This
	code has never worked properly.

	* mail-ops.c (save_part_save): Use the exception enum names rather
	than '1' since it makes the code clearer.

svn path=/trunk/; revision=16756
2002-05-10 19:51:03 +00:00
1ea21ba3e6 Convert UTF-8 to gtkstrings since we are using a clist and not an E-widget
2002-04-29  Jeffrey Stedfast  <fejj@ximian.com>

	* message-tag-followup.c (message_tag_followup_append_message):
	Convert UTF-8 to gtkstrings since we are using a clist and not an
	E-widget that takes UTF-8.

	* mail-display.c (mail_display_add_url): If the data-urls is NULL,
	add a data-urls hash to the datalist. This finishes up bug #90.

svn path=/trunk/; revision=16640
2002-04-29 22:33:50 +00:00
3b7f38cfce add const to silence warning.
2002-04-29  Larry Ewing  <lewing@ximian.com>

	* importers/evolution-mbox-importer.c (process_item_fn): add const
	to silence warning.

	* mail-display.c: add gtkhtml.h include so to pick up the
	object_relative prototype.

svn path=/trunk/; revision=16625
2002-04-29 06:37:25 +00:00
345f0c8c5d Plug-in Anna's html for the flag-for-followup stuff. Finishes up bug #90.
2002-04-22  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (mail_display_render): Plug-in Anna's html for
	the flag-for-followup stuff. Finishes up bug #90.

svn path=/trunk/; revision=16563
2002-04-22 23:35:36 +00:00
5d8a4ea16f Ref the html object here, this is an async handler so it's possible for
2002-04-19  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (stream_write_or_redisplay_when_loaded): Ref the
	html object here, this is an async handler so it's possible for
	our caller (or someone else) to unref the html object before we
	finish.
	(load_content_free): Unref the async handler's ref of the html
	object here.
	(mail_display_new): Ref the html widget here so that we can be
	sure that so long as the mail-display is "alive", so is the html
	object. See bug #22328 for details. Basically, the message-browser
	is being closed before the message gets loaded and so the html
	object was being destroyed but the mail-display was still alive.
	(mail_display_destroy): Unref the html object when the
	mail-display is destroyed.

svn path=/trunk/; revision=16544
2002-04-20 00:41:25 +00:00
c2ee47d180 Bumped required gal version number to 0.19.99.11.
2002-04-17  Christopher James Lahey  <clahey@ximian.com>

	* configure.in: Bumped required gal version number to 0.19.99.11.

From addressbook/ChangeLog:

2002-04-17  Christopher James Lahey  <clahey@ximian.com>

	* gui/component/select-names/e-select-names.c
	(e_select_names_create_categories): Changed this to use
	ECategoriesMasterListOptionMenu.

	* gui/component/select-names/e-select-names.c
	(section_right_click_cb),
	gui/widgets/e-addressbook-reflow-adapter.c,
	gui/widgets/e-addressbook-view.c: Updated these to match the new
	EPopupMenu.

From calendar/ChangeLog:

2002-04-17  Christopher James Lahey  <clahey@ximian.com>

	* gui/e-calendar-table.c, gui/e-day-view.c, gui/e-week-view.c,
	gui/dialogs/meeting-page.c: Updated these to match the new
	EPopupMenu.

From mail/ChangeLog:

2002-04-17  Christopher James Lahey  <clahey@ximian.com>

	* folder-browser.c, mail-display.c: Updated these to match the new
	EPopupMenu.

From shell/ChangeLog:

2002-04-17  Christopher James Lahey  <clahey@ximian.com>

	* e-activity-handler.c: Updated this to match the new EPopupMenu.

svn path=/trunk/; revision=16498
2002-04-17 22:29:56 +00:00
2e55f851fb Set the window title/icon here instead.
2002-04-03  Jeffrey Stedfast  <fejj@ximian.com>

	* message-tag-followup.c (construct): Set the window title/icon
	here instead.

	* message-tag-editor.c (message_tag_editor_init): Don't set the
	title or window icon here, this is a generic class.

	* mail-format.c (handle_multipart_signed): Replace
	get_url_for_icon with the new mail_display_get_url_for_icon
	function.
	(handle_multipart_digest): Here too.
	(get_cid): Use mail_display_add_url instead.
	(get_location): Same.
	(handle_text_enriched): Here too.
	(handle_multipart_signed): And here.

	* message-tag-followup.c (message_tag_followup_i18n_name): Use the
	U_() macro, not the _() macro as it is what we really want.

	* mail-ops.c (mail_send_message): Don't cast the message into a
	CamelMedium before sending anymore.

	* mail-callbacks.c (expunge_folder): Set the followup argument to
	NULL here.
	(done_message_selected): Get the followup value here and pass it
	to the mail-display here.
	(do_mail_fetch_and_print): Again with the NULL followup here.

	* folder-browser.c (folder_browser_set_message_preview): Update to
	pass in NULL as the followup since we are setting the message to
	NULL here.
	(done_message_selected): Get and set the appropriate followup
	value here.
	(do_message_selected): Update to pass in NULL as the followup
	since we are setting the message to NULL here.

	* mail-display.c (mail_display_set_message): Now takes a followup
	tag value.
	(mail_display_init): Set md->followup to NULL.
	(mail_display_destroy): Free md->followup.
	(mail_display_add_url): New: replaces the static add_url function
	originally in mail-format.c
	(mail_display_get_url_for_icon): New: replaces get_url_for_icon
	which was originally in mail-format.c

svn path=/trunk/; revision=16334
2002-04-03 22:55:34 +00:00
5165918a9f unset GTK_CAN_FOCUS on the button so that it can't grab focus when you
* mail-display.c (do_attachment_header): unset GTK_CAN_FOCUS on
	the button so that it can't grab focus when you click it.
	(do_signature): Likewise on the signature button. #3904

svn path=/trunk/; revision=16261
2002-03-27 20:36:28 +00:00
acbbc0a7cd add missing NULL closure data to popup menu initialization.
2002-03-19  Larry Ewing  <lewing@ximian.com>

	* mail-display.c: add missing NULL closure data to popup menu
	initialization.

svn path=/trunk/; revision=16212
2002-03-19 23:13:06 +00:00
4c1a78e612 New callback to set a colour on a message.
2002-03-15  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (colour_msg): New callback to set a colour on a
	message.

	* folder-browser.c (on_right_click): Setup our popup icons and
	stuff. Also add a submenu for Labels.

	* mail-display.c (pixmap_press): Sync up with the new EPopupMenu
	API. Note: This code can probably now be fixed to use per-item
	closures - yay!

	* mail-accounts.c (construct): Connect to the label GtkEntry's and
	GnomeColorPickers and also to the Restore Defaults button.

	* mail-config.c (mail_config_get_label_name): New function to get
	a label's name.
	(mail_config_set_label_name): New function to set the label name.
	(mail_config_get_label_color): New function to get the label
	color.
	(mail_config_set_label_color): New function to set the label
	color.
	(config_read): Read in the config options for the labels and their
	colors.
	(mail_config_write_on_exit): Save the label options.

svn path=/trunk/; revision=16186
2002-03-16 02:22:54 +00:00
b171dcc269 expand the relative urls of the object at the point so that relative
2002-03-15  Larry Ewing  <lewing@ximian.com>

	* mail-display.c: expand the relative urls of the object at the
	point so that relative images can be saved correctly.

	* folder-browser.c: add a closing quote in a comment.

svn path=/trunk/; revision=16181
2002-03-15 23:27:04 +00:00
8ffcf0b755 Handle digest: urls.
2002-03-12  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (on_link_clicked): Handle digest: urls.

	* mail-format.c (setup_mime_tables): Add a handler for multipart/digest.
	(handle_multipart_digest): Handle multipart/digest parts.

svn path=/trunk/; revision=16133
2002-03-12 22:23:08 +00:00
d6f174ad51 Update for storage changes: explicitly create a root folder.
* component-factory.c (add_storage): Update for storage changes:
	explicitly create a root folder.

	* mail-display.c (mail_display_render): Fix the "don't scroll back
	to the top of the HTML widget when opening an attachment" hack
	again by moving it here from mail_display_redisplay(). (It has to
	happen after the gtk_html_begin.)
	(mail_display_redisplay): Pass reset_scroll arg to
	mail_display_render.

	* mail-callbacks.c (do_mail_print): Pass reset_scroll (TRUE) to
	mail_display_render.

svn path=/trunk/; revision=15967
2002-03-07 18:34:14 +00:00
1bd6c04cf6 Added more debugging code to help figure out why a certain image isn't
2002-03-04  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (load_http): Added more debugging code to help
	figure out why a certain image isn't loading - looks like
	gnome-vfs is getting a premature EOF?

svn path=/trunk/; revision=15910
2002-03-04 23:01:28 +00:00
22ac1344f7 Get the Content-Base if the header exists and use gtk_html_set_base to set
2002-02-26  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (handle_text_html): Get the Content-Base if the
	header exists and use gtk_html_set_base to set this base url.

	* mail-display.c (on_link_clicked): No longer need to calculate
	the full url. This is now handled by GtkHTML.
	(on_set_base): Removed.
	(on_url_requested): No longer need to calculate the full url.
	(mail_display_initialize_gtkhtml): Don't connect to the set_base
	signal anymore. We don't care.

	* mail-display.h: No longer need base_url (it was broken anyway).

svn path=/trunk/; revision=15850
2002-02-27 00:01:09 +00:00
b0a253e060 If a related part is requested, remove it from the related undisplayed
2002-02-26  Not Zed  <NotZed@Ximian.com>

        * mail-display.c (on_url_requested): If a related part is
        requested, remove it from the related undisplayed list.

        * mail-format.c (handle_multipart_related): Check if related parts
        are displayed, if not, remove them.  For #2741.

svn path=/trunk/; revision=15837
2002-02-26 00:26:55 +00:00
3b87b4b273 Don't display a down-arrow if the attachment is undisplayable. Fixes bug
2002-02-15  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (do_attachment_header): Don't display a
	down-arrow if the attachment is undisplayable. Fixes bug #6919.
	(launch_cb): Some programs are buggy when it comes to parsing
	file: uris, so make sure we do file://%s. Fixes bug #20456.

svn path=/trunk/; revision=15747
2002-02-16 00:33:14 +00:00
cf668bd306 Don't display a down-arrow if the attachment is undisplayable. Fixes bug
2002-02-15  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (do_attachment_header): Don't display a
	down-arrow if the attachment is undisplayable. Fixes bug #6919.

svn path=/trunk/; revision=15746
2002-02-15 23:34:13 +00:00
e2fb2c92b5 Default the from-account to the source account. If that fails, then guess
2002-02-14  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (mail_generate_reply): Default the from-account
	to the source account. If that fails, then guess the from-account
	based on the recipients. Fixes bug #20479.

svn path=/trunk/; revision=15728
2002-02-14 21:38:40 +00:00
de5b206ef7 added a kludge around a Nautilus bug that calls drag_data_get multiple times witht he same drag.
svn path=/trunk/; revision=15722
2002-02-14 01:30:36 +00:00
05014ce820 Implement. (drag_data_delete_cb): Implement. (do_attachment_header): Setup
2002-02-13  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (drag_data_get_cb): Implement.
	(drag_data_delete_cb): Implement.
	(do_attachment_header): Setup Drag & Drop. This implements
	bugzilla bug #1066.

svn path=/trunk/; revision=15721
2002-02-14 01:24:23 +00:00
22e539d536 Save the pathname. (save_part): Use the new mail_config cruft to get the
2002-01-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (save_data_cb): Save the pathname.
	(save_part): Use the new mail_config cruft to get the last used
	save pathname.

	* mail-config.c (config_read): Read in last_filesel_dir string.
	(mail_config_write_on_exit): Save the last_filesel_dir setting.
	(mail_config_get_last_filesel_dir): New
	(mail_config_set_last_filesel_dir): New

svn path=/trunk/; revision=15474
2002-01-25 19:32:27 +00:00
e9db6d2a07 New callback to handle the set_base signal. (on_url_requested): If the
2002-01-15  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (on_set_base): New callback to handle the
	set_base signal.
	(on_url_requested): If the base_url is set, prepend it to the data
	url (we don't want to do this for cid urls or part urls tho).
	(mail_display_init): Initialize md->base_url to NULL.
	(mail_display_destroy): Free the base_url.
	(mail_display_initialize_gtkhtml): Connect to the set_base signal.
	(on_link_clicked): If the base_url is set, prepend it to the url
	string passed to us from gtkhtml.

svn path=/trunk/; revision=15329
2002-01-15 21:38:50 +00:00
b5ca749f36 Add an Organization header.
2002-01-03  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (composer_get_message): Add an Organization
	header.

svn path=/trunk/; revision=15242
2002-01-03 23:54:28 +00:00
37f1f773e2 Start reiplementing The Right Way and not danw's fucking half-assed kludge
2001-12-14  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-format.c (try_inline_pgp):
	(try_inline_pgp_sig): Start reiplementing The Right Way and not
	danw's fucking half-assed kludge that doesn't work.

svn path=/trunk/; revision=15076
2001-12-14 17:57:08 +00:00
d91cf08981 Fixed for mail_content_loaded's new signature.
2001-12-11  Jon Trowbridge  <trow@ximian.com>

	* mail-identify.c (mail_identify_mime_part): Fixed for
	mail_content_loaded's new signature.

	* mail-format.c (attachment_header): Don't convert URLs, etc. if
	we are printing.
	(write_address): Don't convert addresses to mailto: links if we
	are printing.
	(write_one_text_plain_chunk): Add a printing flag, that we pass
	along to mail_text_write.
	(handle_text_plain): Pass our printing flag to
	write_one_text_plain_chunk.
	(mail_get_message_rfc822): Don't unneccesarily convert URLs.
	(mail_content_loaded): Add a GtkHTML parameter.

	* mail-display.c (mail_display_initialize_gtkhtml): Added.  Breaks
	all of the signal hookups out of mail_display_new.
	(mail_display_new): Call mail_display_initialize_gtkhtml.
	(mail_text_write): Don't convert URLs, etc., if we are printing.
	Lots of other changes to pass around GtkHTML/GtkHTMLStream objects.

	* mail-callbacks.c (do_mail_print): Call
	mail_display_initialize_gtkhtml on our GtkHTML object.

	* folder-browser.c (update_status_bar): Make the status bar more
	useful when you have a large number of hidden messages.

svn path=/trunk/; revision=14997
2001-12-11 23:07:22 +00:00
6642d01f14 Add ETable magic for our new "Needs Reply" column. (The next few entries
2001-12-11  Jon Trowbridge  <trow@ximian.com>

	* message-list.etspec: Add ETable magic for our new "Needs Reply"
	column.  (The next few entries are for bug #90)

	* message-list.h: Add COL_NEED_REPLY.

	* message-list.c: Move mail_need_reply_xpm to the end of
	states_pixmaps.
	(ml_duplicate_value): Handle COL_NEED_REPLY.
	(ml_free_value): Handle COL_NEED_REPLY.
	(ml_initialize_value): Handle COL_NEED_REPLY.
	(ml_value_is_empty): Handle COL_NEED_REPLY.  Added
	needs_reply_map[] array.
	(ml_value_to_string): Handle COL_NEED_REPLY.
	(ml_tree_value_at): Fix magic numbers, undoing my changes from the
	otehr day.  Add handler for COL_NEED_REPLY.
	(message_list_create_extras): Attach icons for COL_NEED_REPLY.
	(on_click): Undo my previous changes to display need-reply status
	in COL_MESSAGE_STATUS.  Add handing for COL_NEED_REPLY.

	* mail.h: Change mail_format_mime_message, mail_format_raw_message
	and the MailMimeHandlerFn typedef to take GtkHTML and
	GtkHTMLStream args, as per our changes in mail-format.c.

	* mail-format.c: Giant refactoring.  Remove the assumption
	throughout that we will always want to render into the GtkHTML
	object contained in the MailDisplay.  Instead, always pass in the
	GtkHTML and GtkHTMLStream that we want to write to.  Also, ignore
	theme work-arounds if the printing flag is set.  (This and what
	follows fixes bug #82)

	* mail-display.h: Remove GtkHTMLStream *stream from MailDisplay.
	We don't need it anymore.

	* mail-display.c (mail_display_render): Added.  Breaks the code
	that renders the message into the GtkHTML object out of
	mail_display_redisplay.
	(mail_display_redisplay): Call mail_display_render.
	(mail_display_init): Remove reference to ->stream.
	(mail_display_new): Remove reference to ->stream.

	* mail-callbacks.c (do_mail_print): Create a new GtkHTML to render
	our printed version into (via the new function
	mail_display_render.  Set the MailDisplay's printing flag to TRUE
	before we render, and set it back to FALSE afterwards.
	(do_mail_fetch_and_print): If the preview pane isn't open when we
	try to print, fetch the message before printing.
	(print_msg): Call do_mail_fetch_and_print.
	(print_preview_msg): Call do_mail_fetch_and_print.

	* folder-browser-ui.c: Remove "PrintMessage" and
	"PrintPreviewMessage" from message_pane_enables... these now work
	when the preview pane is closed.  Disable printing if multiple
	messages are selected.

svn path=/trunk/; revision=14981
2001-12-11 18:03:44 +00:00
7cdf441965 Don't just assume all of the GtkHTMLEmbedded's fields are filled in, since
* mail-display.c (on_object_requested): Don't just assume all of
	the GtkHTMLEmbedded's fields are filled in, since HTML messages
	may have <object>s in them that we're not expecting.

	* mail-send-recv.c (mail_send_receive): Add a "current_folder"
	arg.
	(build_dialogue): Remember the current_folder
	(free_send_data): If current_folder is set, refresh it so it's
	guaranteed to be synced with the folder tree. Fixes #14770.

	* mail-callbacks.c (send_receive_mail): Pass current_folder to
	mail_send_receive().

svn path=/trunk/; revision=14950
2001-12-10 14:34:45 +00:00
d0053fd3c7 Check that the mail-display hasn't been destroyed.
2001-12-04  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (stream_write_or_redisplay_when_loaded): Check
	that the mail-display hasn't been destroyed.
	(mail_display_redisplay): Same here.

2001-12-07  Dan Winship  <danw@ximian.com>

	* mail-send-recv.c (receive_update_got_store): If updating a store
	that we don't have an associated storage for, just request a
	folder tree and then free it. (For the Connector)

	* mail-callbacks.h: Add missing part of Jeff's 12-03 patch so this
	actually compiles.

svn path=/trunk/; revision=14938
2001-12-07 20:25:04 +00:00
ba58d14fae merged from evoution-1-0-branch
2001-11-25  Not Zed  <NotZed@Ximian.com>

        * mail-config.c (config_read): Enable news accounts that exist
        always, since no gui for it.

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

        * message-list.c (message_list_select): 'n' shouldn't wrap if 'p'
        doesn't.

        * mail-format.c (format_mime_part): Make sure the mime-type is
        non-NULL before passing it off to mail_lookup_handler().

2001-11-20  Not Zed  <NotZed@Ximian.com>

        * folder-browser-ui.c: Disable search if no message
        loaded/viewed.  Also for #14348.

        * folder-browser.c: Disable "Add sender to addressbook" if we dont
        have a message loaded (it wont work).  For #14348.

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

        * mail-display.c (load_content_loaded): Make sure the mail-display
        object is still "alive" before accessing any of it's data.

svn path=/trunk/; revision=14796
2001-11-27 21:41:18 +00:00
115c8ef7a3 Renamed from mail_html_write_string.
2001-11-01  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.h (mail_html_write): Renamed from
	mail_html_write_string.

	* mail-display.c (mail_text_write): Don't bother with varargs
	since nothing used them, we were only passing strings anyway...
	(mail_error_printf): Renamed from mail_error_write, this makes
	more sense.
	(mail_html_write): Removed.

	* mail-format.c: Updated to use gtk_html_stream_printf directly
	and s/mail_html_write_string/mail_html_write.
	(mail_lookup_handler): Don't use %.*s here either...
	(handle_text_enriched): Same.
	(write_one_text_plain_chunk): And finally here (also update for
	new mail_text_write api).
	(handle_multipart_signed): Update for new mail_text_write api.
	(format_mime_part): Update for new mail_error_text/printf name
	change.
	(handle_multipart_encrypted): Same.

	* mail-tools.c (mail_tool_generate_forward_subject): Same as
	mail_generate_reply.

	* mail-callbacks.c (mail_generate_reply): Don't use %.*s in any
	*printf* functions.

svn path=/trunk/; revision=14590
2001-11-05 19:47:59 +00:00
b5ec8bf5cf Write out the url before callind add_url since add_url may free it. Fixes
* mail-format.c (handle_multipart_signed): Write out the url
	before callind add_url since add_url may free it. Fixes #13839.
	Remove debug printf.

	* mail-display.c (on_object_requested): Remove debug printf.

svn path=/trunk/; revision=14564
2001-11-01 20:42:57 +00:00
851e028998 add some debug spew re 13839.
* mail-format.c (handle_multipart_signed): add some debug spew re
	13839.

	* mail-display.c (on_object_requested): here too

svn path=/trunk/; revision=14404
2001-10-30 02:38:26 +00:00
291331936c Work around something that we think is a GtkHTML bug, where sometimes the
* folder-browser.c (etree_key): Work around something that we
	think is a GtkHTML bug, where sometimes the adjustments have
	slightly bogus values and scrolling ends up working backwards.
	(Ximian 4939)

	* mail-display.c (do_signature, do_attachment_header): Set the
	icon to be 24x24 here so that (assuming it's not a thumbnail), no
	resizes will have to be queued later. (There's still a bug with
	the text to the left of the button being drawn twice for some
	reason though.)

	* mail-callbacks.c (delete_msg): Fix a bug here that makes
	deleting multiple messages cause a gratuitous message body fetch.
	(Ximian 12355)

svn path=/trunk/; revision=14172
2001-10-26 21:29:16 +00:00
3
d42effce71 Remove the idle_id when we're destroyed so the idle func doesn't run on an
2001-10-23    <NotZed@Ximian.com>

        * mail-display.c (mail_display_destroy): Remove the idle_id when
        we're destroyed so the idle func doesn't run on an invalid object.

svn path=/trunk/; revision=13966
2001-10-23 23:31:16 +00:00
113bb17ac1 New fun macro.
2001-10-22  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.h (mail_html_write_string): New fun macro.

	* mail-format.c (write_one_text_plain_chunk): Use gtk_html_write
	instead of mail_html_write so we avoid strdup'ing the text.
	(handle_text_plain_flowed): Use the mail_html_write_string macro.
	(handle_message_rfc822): Here too.
	(mail_format_raw_message): We can do it here also...
	(attachment_header): We can do it a little bit here...
	(write_address): A microscopic bit here...
	(write_hr): same.

svn path=/trunk/; revision=13925
2001-10-23 01:48:05 +00:00
4807a4d7e7 New class that wraps writing to a GtkHTML stream so that we don't have to
2001-10-22  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-stream-gtkhtml.c (mail_stream_gtkhtml_new): New class that
	wraps writing to a GtkHTML stream so that we don't have to write
	to an intermediate GByteArray.

	* mail-display.c (on_url_requested): Use the new Camel->GtkHTML
	stream - this means we don't have to chew up nearly as much
	memory...yay!

svn path=/trunk/; revision=13911
2001-10-22 23:24:01 +00:00
9c9f8ebfdf PGP verification UI changes to make it not HTML spoofable.
* mail-format.c (handle_application_pgp): Remove this unused
	hack.
	(mail_format_mime_message): Initialize a fourth hash table, used
	to keep track of fake MIME parts.
	(mail_part_set_default_displayed_inline): New routine to set the
	default disposition of a part (doesn't change it if the user has
	already overridden it).
	(format_mime_part): Wrap a blockquote around the error text (moved
	here from mail_error_write since it doesn't apply in other cases).
	(write_hr): Write a <hr> with appropriate padding between MIME
	parts.
	(write_one_text_plain_chunk): Write some plain text with
	appropriate margins.
	(handle_text_plain): Use write_one_text_plain_chunk. Update for
	inline specials handler API change.
	(fake_mime_part_from_data): Use the "fake_parts" hash to avoid
	recreating the same fake parts again if the message is
	redisplayed. Lets you toggle the shown/hiddenness of uudecode
	parts, and do the new pgp verification thing for inline pgp
	signatures.
        (try_inline_pgp): Don't do any actual PGP handling here: Just
	rewrite as a multipart/encrypted.
	(try_inline_pgp_sig): Likewise, just do a multipart/signed (with
	the x-inline-pgp-hack parameter set).
	(try_uudecoding, try_inline_binhex): Update for API changes.
	(handle_multipart_signed): Exciting and new. Use <object> to
	create a button which the user must click to do the
	verification. Change the formatting of the gpg output text a bit.

	* mail-display.c (on_link_clicked): Remove x-evolution-decode-pgp
	hack, which is no longer used.
	(pixbuf_gen_idle): Add a hack for the PGP verification button.
	(do_attachment_header, do_external_viewer): Split out of
	on_object_requeested for clarity.
	(do_signature): New routine to do the PGP verification button.
	(on_object_requested): Now just dispatches to
	do_attachment_header, do_external_viewer, or do_signature.
	(mail_error_write): Don't do <blockquote> here. Fixed the problem
	that was trying to fix elsewhere.

svn path=/trunk/; revision=13888
2001-10-22 18:47:59 +00:00
b1c2896995 Use mail_format_get_data_wrapper_text for text parts so we get free
2001-10-21  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (on_url_requested): Use
	mail_format_get_data_wrapper_text for text parts so we get free
	charset conversion.

	* mail-format.c (mail_format_get_data_wrapper_text): Renamed from
	get_data_wrapper_text and now returns a GByteArray.
	(handle_text_plain): Updated to use the new get_data_wrapper_text.
	(handle_application_pgp): Same. Wow...also fixed a mem leak and
	made a bit more efficient by doing so.
	(handle_text_enriched): Here too. Also use string->len instead of
	strlen (string->str).
	(mail_format_raw_message): Same.

svn path=/trunk/; revision=13862
2001-10-22 02:25:36 +00:00
1
a02822a94e Clear variables once done, for debugging. (mail_vfolder_add_uri,
2001-10-21    <NotZed@Ximian.com>

        * mail-vfolder.c (mail_vfolder_shutdown): Clear variables once
        done, for debugging.
        (mail_vfolder_add_uri, mail_vfolder_delete_uri): Dont do anything
        if we're shutdown (context == NULL).

        * component-factory.c (idle_quit): Move mail_vfolder_shutdown
        here, it should be one of the last things shutdown.

        * mail-format.c (handle_text_plain): Dont use (if (!p++), and then
        check p!= later, since its now 1, oops.  Fixes #13106, thought it
        was a start of uuencoded stuff!

        * folder-browser.c (on_right_click): Escape _'s before adding them
        to menu from mailing list name, also remove some dead code that
        someone forgot to remove when refactoring.  #11307.
        (folder_browser_is_drafts): Use the store's uri_cmp function to
        compare to the drafts uri's.
        (folder_browser_is_sent): Same.  Slight cleanup for #11351.

svn path=/trunk/; revision=13856
2001-10-21 20:28:58 +00:00
a4667973f5 Don't leak our ESearchingTokenizer.
2001-10-20  Jon Trowbridge  <trow@ximian.com>

	* mail-display.c (mail_display_new): Don't leak our
	ESearchingTokenizer.

svn path=/trunk/; revision=13837
2001-10-21 03:32:53 +00:00
c886f7d8bc don't write strings longer than they actually are.
2001-10-15  Larry Ewing  <lewing@ximian.com>

	* mail-display.c (mail_error_write): don't write strings longer
	than they actually are.

svn path=/trunk/; revision=13693
2001-10-16 01:59:34 +00:00
dd8def8723 Convert URLS so we can get clickable links.
2001-10-12  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (mail_error_write): Convert URLS so we can get
	clickable links.

svn path=/trunk/; revision=13628
2001-10-12 21:28:52 +00:00