Commit Graph

129 Commits

Author SHA1 Message Date
c6de9ace9f make this a little less kludgy. Use gnome_error_dialog rather than printf
* folder-browser.c (folder_browser_load_folder): make this a
	little less kludgy. Use gnome_error_dialog rather than printf on
	errors.

	* mail-ops.c (fetch_mail): Fix to work with the new shell stuff...
	sorta. Will need more fixing later when the new shell framework is
	more done.

	* mail-config.c (finish): Call gnome_config_sync so the data
	actually gets written.

svn path=/trunk/; revision=2931
2000-05-09 05:08:25 +00:00
38165888d2 Update for CamelStream CamelException changes.
* mail-display.c (save_data_cb):
	(on_url_requested): Update for CamelStream CamelException changes.

	* mail-format.c: Pass NULL for a CamelException in a bunch of
	places... the user will see that the data is not being displayed,
	and there's not a lot we can do, and none of these things should
	be failing anyway. Maybe fix this later.

svn path=/trunk/; revision=2925
2000-05-08 22:28:11 +00:00
4b0541ac33 Size moved to message info, rather than content info structure.
2000-05-07  NotZed  <NotZed@HelixCode.com>

        * message-list.c (ml_value_at): Size moved to message info, rather
        than content info structure.

svn path=/trunk/; revision=2905
2000-05-08 05:23:19 +00:00
48b23b2a9b unref the message after displaying it.
* message-list.c (select_msg): unref the message after displaying
	it.

	* mail-format.c (get_data_wrapper_text):
	(handle_text_plain_flowed):
	(handle_via_bonobo): Replace camel_stream_close calls.

svn path=/trunk/; revision=2883
2000-05-07 21:57:06 +00:00
994667f2fe Changed a toolbar button from saying "New mail" (which suggests you might
* folder-browser-factory.c: Changed a toolbar button from saying
	"New mail" (which suggests you might be composing new mail) to
	"Get mail".

svn path=/trunk/; revision=2880
2000-05-07 20:49:15 +00:00
5883763060 Don't hardcode "inbox" here.
* folder-browser-factory.c (folder_browser_factory): Don't
	hardcode "inbox" here.

	* folder-browser.c (folder_browser_set_uri): Don't hardcode
	"inbox" here either.
	(folder_browser_load_folder): Create a new store according to the
	folder browser's URI, and load the mbox file from that store.
	Parts of this are temporary.

	* session.c, mail.h: There is no longer a global store, just a
	global session.

	* mail-config.c, mail-ops.c: Update for default_session -> session
	change. fetch_mail is currently broken.

svn path=/trunk/; revision=2853
2000-05-07 03:15:22 +00:00
8fbd4ab4bd New code to configure identity, mail source, and mail transport.
* mail-config.c: New code to configure identity, mail source, and
	mail transport.
	(mail_config_druid): A druid using the config widgets. (Only
	allows configuration of a single identity, source, and transport.)

	* mail-ops.c (check_configured): New function to make sure the
	user has configured stuff, and call the	druid if not.
	(fetch_mail, send_msg, send_to_url, reply, forward_msg): Call
	check_configured
	(composer_send_cb): Make this pass the message to a CamelTransport
	rather than just printing it to stdout.

	* folder-browser-factory.c (development_warning): Add a warning
	about sending mail, since you can do that now.

svn path=/trunk/; revision=2842
2000-05-06 22:57:38 +00:00
18c5703d4a ignore evolution-mail.pure
* .cvsignore: ignore evolution-mail.pure

        * Makefile.am: add support for building evolution-mail.pure

svn path=/trunk/; revision=2832
2000-05-06 21:18:34 +00:00
2ef945c6e2 consolidate mail-format.h, mail-identify.h, mail-ops.h, main.h and
* mail.h: consolidate mail-format.h, mail-identify.h, mail-ops.h,
	main.h and session.h into this new file. There's no reason to have
	a .h for every .c.

svn path=/trunk/; revision=2830
2000-05-06 17:16:22 +00:00
52051385f2 Use the OAFIID when using an OAF-enabled build of bonobo.
2000-05-05  Anders Carlsson  <andersca@gnu.org>

	* test-mail.c (create_container): Use the OAFIID when using an
	OAF-enabled build of bonobo.

svn path=/trunk/; revision=2818
2000-05-05 18:24:37 +00:00
1b8139c995 ignore the .pure directory
* addressbook/backend/ebook/.cvsignore,
        addressbook/contact-editor/.cvsignore,
        addressbook/gui/component/.cvsignore,
        addressbook/gui/minicard/.cvsignore,
        addressbook/printing/.cvsignore,
        calendar/cal-client/.cvsignore,
        calendar/gui/.cvsignore,
        calendar/pcs/.cvsignore,
        filter/.cvsignore,
        mail/.cvsignore,
        shell/.cvsignore,
        tests/.cvsignore,
        widgets/e-table/.cvsignore,
        widgets/e-text/.cvsignore,
        widgets/meeting-time-sel/.cvsignore,
        widgets/shortcut-bar/.cvsignore,
        wombat/.cvsignore: ignore the .pure directory

svn path=/trunk/; revision=2812
2000-05-05 11:46:46 +00:00
241a35c42f Requires a camel-patch, about to come through ...
2000-05-04  NotZed  <NotZed@HelixCode.com>

	* message-list.c (message_list_set_folder): Get the whole message
	summary right away.
	(folder_changed): And if we change too.
	(ml_row_count): Use the match count or summary table length as the
	row count.
	(get_message_info): Use array references to lookup message summary
	info.  For the search result list, use the summary_search_cache to
	cache the info lookup.
	(message_list_init): Allocate the summary search cache.
	(message_list_destroy): Free the summary search cache and the
	summary table, if there is one to free.
	(message_list_set_search): Save the match count, and clear the
	summary search cache for reuse.
	(folder_changed): Re-retrieve the summary list if the folder has
	changed.
	(message_list_set_folder): Retrieve the summary list when opening
	the folder.

svn path=/trunk/; revision=2807
2000-05-05 03:42:22 +00:00
d4d70c5c3c Some small build fixes:
* camel/Makefile.am (INCLUDES): add $(UNICODE_CFLAGS) to the INCLUDES,
	people who installed libunicde in non-standard include paths
	need this.

        * mail/Makefile.am (evolution_mail_LDADD):
	s/-lunicode/$(UNICODE_LIBS)/

svn path=/trunk/; revision=2785
2000-05-04 01:15:11 +00:00
460048da68 Make the "Cc:" field optional again. (Before, we could check if
* mail-format.c (write_recipients_to_stream, write_headers): Make
	the "Cc:" field optional again. (Before, we could check if
	camel_mime_message_get_recipients returned NULL, but now we need
	to actually look into the returned CamelInternetAddress object.)

svn path=/trunk/; revision=2783
2000-05-03 22:16:23 +00:00
3ccfb61399 s/strcasecmp/g_strcasecamp/ everywhere except intl/, per michael's
request.

svn path=/trunk/; revision=2776
2000-05-03 14:43:10 +00:00
8813178854 comment out the changed signal for now.
2000-05-03  Larry Ewing  <lewing@helixcode.com>

	* folder-browser.c (folder_browser_gui_init): comment out the
	changed signal for now.

svn path=/trunk/; revision=2775
2000-05-03 06:29:22 +00:00
855b85657d Set G_LOG_DOMAIN in following files.
addressbook/demo/Makefile.am
 addressbook/printing/Makefile.am
 camel/Makefile.am
 camel/providers/MH/Makefile.am
 camel/providers/maildir/Makefile.am
 camel/providers/mbox/Makefile.am
 camel/providers/nntp/Makefile.am
 camel/providers/pop3/Makefile.am
 camel/providers/sendmail/Makefile.am
 camel/providers/smtp/Makefile.am
 composer/Makefile.am
 e-util/Makefile.am
 filter/Makefile.am
 libibex/Makefile.am
 mail/Makefile.am
 shell/Makefile.am
 tests/Makefile.am
 tests/ui-tests/Makefile.am
 widgets/e-table/Makefile.am
 widgets/e-text/Makefile.am
 widgets/meeting-time-sel/Makefile.am
 widgets/shortcut-bar/Makefile.am

svn path=/trunk/; revision=2756
2000-05-02 21:34:01 +00:00
cce3d43332 only free search if it is not NULL.
2000-05-02  Larry Ewing  <lewing@helixcode.com>

	* message-list.c (message_list_set_search): only free search if it
	is not NULL.

svn path=/trunk/; revision=2754
2000-05-02 20:54:37 +00:00
ab96ee0005 > 2000-05-02 NotZed <NotZed@HelixCode.com>
>
> 	* folder-browser.c (folder_browser_gui_init): Connect the changed
> 	signal to search, so it searched immediately?
>
40a46,48
> 	(message_list_set_search): Save the search string.
> 	(folder_changed): If the folder changes, re-run the search,
> 	otherwise we may end up with invalid entries in the display.

svn path=/trunk/; revision=2749
2000-05-02 17:53:26 +00:00
56f4dd919f Added a deleted message icon whcih shows when messages are
deleted (takes a while to update the gui for some reason).
Updates the gui when expunged, via a signal.

	* pixmaps.h: Added envelope-deleted state.

	(message_list_init_renderers): Added a 3rd state to message_status
	= deleted.
	(ml_value_at): Show the message state as deleted, if it is marked
	for deletion.
	(folder_changed): When the folder changes, update the display.
	(message_list_set_folder): Connect to the folder_changed event
	here.
	(message_changed): Callback to update the display when the message
	changes.
	(select_msg): And connect to the message_changed signal so we know
	when it cahgnes.

svn path=/trunk/; revision=2746
2000-05-02 03:33:55 +00:00
0cb506a96a Ok, you can now delete and expunge messages ... not really pretty
(gui wise), but it works, after a fashion.

> 	* folder-browser-factory.c: Setup callback for actual delete op.
> 	(control_activate): Setup a tool menu item to expnge deleted
> 	messages.
>
> 	* mail-ops.c (delete_msg): Toggle the delete flag on a message.
> 	(expunge_folder): New function to expunge deleted messages from
> 	the current folder.

svn path=/trunk/; revision=2744
2000-05-02 03:00:56 +00:00
c65aa11c9b > (folder_browser_gui_init): Add an option meny to the search line.
> 	(create_option_menu): Build the option menu from a table.
> 	(search_set): Build a search from another string whent he option
> 	menu or text item is changed.  5 search options are defined so
> 	far.

svn path=/trunk/; revision=2742
2000-05-02 01:59:58 +00:00
5c3e0a6314 A hackish little quick-search entry. (search_activate): Perform a
2000-05-01  NotZed  <NotZed@HelixCode.com>

        * folder-browser.c (folder_browser_gui_init): A hackish little
        quick-search entry.
        (search_activate): Perform a quick-search on the folder subject
        only.

        * message-list.c (get_message_info): If there is an active search,
        then get the data from that ... use this instead of
        _get_message_info().
        (ml_row_count): If we have an active search, get the info from its
        result.
        (select_msg): Changed to use get_message_info, so searches work.
        (ml_value_at): And same here.

        * mail-display.c: Include missing errno.h.

svn path=/trunk/; revision=2724
2000-05-01 21:51:03 +00:00
19a9f773ab This is no longer necessary.
* session.c (session_providers_init): This is no longer necessary.

	* mail-ops.c (fetch_mail): Remove kludge to load remote provider,
	as camel can do it by itself now.

svn path=/trunk/; revision=2692
2000-04-30 15:36:46 +00:00
d77a77c7e5 Handle clicks on "cid" URLs by popping up a "Save Attachment" dialog.
* mail-display.c (on_link_clicked): Handle clicks on "cid" URLs by
	popping up a "Save Attachment" dialog.

	* mail-format.c (get_cid): if the part has a Content-Disposition
	with a filename specified, record (a sanitized version of) that on
	the wrapper when creating the cid reference, so the "save
	attachment" code can use it later.
	(handle_mystery): fix a bug in the cid generation here.

svn path=/trunk/; revision=2685
2000-04-29 21:28:00 +00:00
6942830c98 Improve the builtin vs bonobo selection code. (handle_mystery): Include
* mail-format.c (lookup_handler, etc): Improve the builtin vs
	bonobo selection code.
	(handle_mystery): Include name and Content-Description in the
	"mystery data" info, when available
	(handle_unknown_type): Call mail_identify_mime_part before
	giving up.
	(handle_undisplayable): Split out of handle_unknown_type now
	that handle_unknown_type can try alternate viewers.
	(handle_via_bonobo): Fall back to handle_undisplayable if the
	bonobo control fails.

	* mail-identify.c (mail_identify_mime_part): New function to
	attempt to identify a MIME part that we can't identify based on
	Content-Type alone.

	* mail-display.c (on_url_requested): redo the mystery data icon
	display stuff less kludgily.

svn path=/trunk/; revision=2684
2000-04-29 19:17:46 +00:00
22127dc16c update for Camel recipient changes. (Just to make it build, not to take
advantage of new features, or do things cleanly.)

svn path=/trunk/; revision=2677
2000-04-28 22:42:53 +00:00
e11f08d048 Fix broken OAF patch for the GNORBA case.
svn path=/trunk/; revision=2676
2000-04-28 22:21:06 +00:00
9bc896ddb9 Makefile fix
svn path=/trunk/; revision=2674
2000-04-28 07:50:09 +00:00
9483369aa0 Made Evolution OAF-compatible.
svn path=/trunk/; revision=2673
2000-04-28 04:23:19 +00:00
f99adedeb6 Oops. Remove the part of the previous patch that wasn't supposed to
escape into the real world. :)

svn path=/trunk/; revision=2665
2000-04-27 19:06:16 +00:00
397a851038 Move text_to_html to e-util.
* mail-format.c: Move text_to_html to e-util.

	* mail-ops.c (send_to_url): New routine. Thin wrapper for
	e_msg_composer_new_from_url.

	* mail-display.c (on_link_clicked): print a warning for news or
	nntp URLs (which we'll deal with some day), and call send_to_url
	for mailto URLs.

svn path=/trunk/; revision=2664
2000-04-27 19:03:54 +00:00
61e58833c2 Improve URL converstion code. Recognize https, recognize "www\..*" without
* mail-format.c (text_to_html): Improve URL converstion code.
	Recognize https, recognize "www\..*" without a prefixed "http://".
	Properly escape &, <, >, etc in URL strings. Don't be fooled by
	"mailto:", "http://", etc with no following data.

svn path=/trunk/; revision=2660
2000-04-27 17:18:55 +00:00
67b29dfe36 Reorganize a bit and add a new flag, TEXT_TO_HTML_CONVERT_URLS to
* mail-format.c (text_to_html): Reorganize a bit and add a new
	flag, TEXT_TO_HTML_CONVERT_URLS to recognize and wrap URLs
	in text.

	* mail-display.c (mail_html_new): Add link_clicked signal handler.
	(on_link_clicked): Use gnome_url_show to launch a browser.

The Dingus has landed.

svn path=/trunk/; revision=2653
2000-04-27 03:32:10 +00:00
2a6a191e05 Remove. We weren't using the fields that made this different from
* camel-mime-body-part.[ch]: Remove. We weren't using the fields
	that made this different from camel-mime-part, so it basically
	just forced us to do lots of gratuitous typecasting.

	* camel-multipart.[ch]: Use CamelMimePart. Remove the multipart
	parent stuff, since we weren't using that either.

	* etc: update for CamelMimeBodyPart -> CamelMimePart

svn path=/trunk/; revision=2645
2000-04-26 21:30:32 +00:00
b2ae704032 update for CamelStream changes.
* mail-format.c: update for CamelStream changes.

svn path=/trunk/; revision=2631
2000-04-26 14:40:43 +00:00
23bcb0bbd8 add a convert_space_hack flag, which turns N spaces into N-1 &nbsp;s and a
* mail-format.c (text_to_html): add a convert_space_hack flag,
	which turns N spaces into N-1 &nbsp;s and a space.
	(handle_text_plain): Check for "format=flowed" in the
	Content-Type.
	(handle_text_plain_flowed): Spinoff of handle_text_plain to deal
	with RFC 2646 flowed text. (All the examples I can find of it
	are generated by Eudora, but it's a pretty cool idea that ought
	to be used more widely.)

svn path=/trunk/; revision=2618
2000-04-26 00:36:31 +00:00
11ca787488 Now that we're not limited to a single GtkHTML for the display, there's no
* mail-format.c, mail-display.c: Now that we're not limited to
	a single GtkHTML for the display, there's no reason to embed
	Bonobo objects for unrecognized content-types in GtkHTML rather
	than embedded them into the vbox directly. So do that.

	Meanwhile, fix up the handler-selection code so that we can
	declare which built-in handlers are more desirable than external
	handlers and which are less. (Of course, eventually we'll want
	this to be customizable.) Add some cleverness to
	handle_multipart_alternative as well so it doesn't accept an
	alternative which we can display generically over one we can
	display specifically.

svn path=/trunk/; revision=2616
2000-04-25 23:00:52 +00:00
abc010d5a5 (reply_body): Make this deal better with multiparts.
svn path=/trunk/; revision=2612
2000-04-25 19:10:02 +00:00
a8b75db188 (setup_function_table): pass unknown text subtypes to
handle_text_plain.
	(handle_multipart_appledouble): new handler. Just ignores the
	first (application/applefile) part and tries to display the
	second part. Since the second part is usually
	application/octet-stream, this doesn't work very well still
	usually.

svn path=/trunk/; revision=2611
2000-04-25 19:09:19 +00:00
a595bef604 Fix some bugs that crept into reply generation. This needs a lot more work
* mail-format.c (reply_body): Fix some bugs that crept into reply
	generation. This needs a lot more work to deal correctly with
	complicated bodies.

svn path=/trunk/; revision=2602
2000-04-25 15:29:12 +00:00
9713f20bc8 Redo large chunks of this. The mail display now consists of a vbox in a
* mail-display.c, mail-format.c: Redo large chunks of this. The
	mail display now consists of a vbox in a scrolled window, in which
	we put multiple GtkHTML objects. This means broken HTML in one
	part can't corrupt other parts. The headers now scroll with the
	body. Unrecognized attachments look prettier, but still don't do
	anything, and will probably be changed later. We can also now
	display nested message/rfc822 parts and multipart/alternatives
	with multipart subparts. Oh, and text/{richtext,enriched}, since
	we had all these ancient sample messages that use it and the lack
	of support annoyed me. :)

	Bonobo embeddables are broken right now, but I don't think that's
	my fault.

svn path=/trunk/; revision=2601
2000-04-25 14:59:08 +00:00
4c1c537e19 rename "send" to "send_msg", to avoid name clash with the tcp function.
* folder-browser-factory.c: rename "send" to "send_msg", to avoid
	name clash with the tcp function. Connect the "forward" button.

	* mail-ops.c: rename "send" to "send_msg", to avoid name clash
	with the tcp function. Add forward_msg function.

	* mail-format.c (mail_generate_forward): support function for
	forward_msg. Pretty much a big kludge right now, pending the
	attachment/attachment-bar changes.

svn path=/trunk/; revision=2562
2000-04-23 17:15:07 +00:00
76160580a6 Change cid expectations to match current camel reality.
* mail-display.c (on_url_requested): Change cid expectations to
	match current camel reality.

svn path=/trunk/; revision=2558
2000-04-22 22:38:57 +00:00
034b50a321 call glade_gnome_init, for composer.
* main.c (main): call glade_gnome_init, for composer.

svn path=/trunk/; revision=2556
2000-04-22 18:46:49 +00:00
bd8d36fbcb #include "mail-format.h"
svn path=/trunk/; revision=2555
2000-04-22 18:34:58 +00:00
f5ec554c15 move msg_composer_cb and msg_composer_send_cb to mail-ops. Attach send,
* folder-browser-factory.c: move msg_composer_cb and
	msg_composer_send_cb to mail-ops. Attach send, reply, and "reply
	to all" buttons.

	* mail-ops.c (composer_send_cb, send): moved from
	folder-browser-factory.c.
	(reply_to_sender, reply_to_all): new functions to do replies.

	* mail-format.c (text_to_html): Add an "add_pre" flag, to make
	it wrap the output in <pre></pre>.
	(mail_generate_reply): New function to create a composer and build
	a reply in it.

svn path=/trunk/; revision=2554
2000-04-22 18:07:14 +00:00
8ff61b81c5 deal with cid: URLs. (find_cid): helper routine for above. (This could be
* mail-display.c (on_url_requested): deal with cid: URLs.
	(find_cid): helper routine for above. (This could be much better.)
	(mail_display_init): connect url_requested signal

	* mail-format.c (handle_multipart_related): Make this work.

svn path=/trunk/; revision=2542
2000-04-21 05:12:05 +00:00
dc1d13533c ref the message we display, since we're going to unref it when we remove
* mail-display.c (mail_display_set_message): ref the message we
	display, since we're going to unref it when we remove it. Fixes a
	bug that showed up with the new camel code, but it's not obvious
	if it's due to a bug or a feature in the new code.

svn path=/trunk/; revision=2541
2000-04-21 05:01:35 +00:00
a54e4b1074 Oops, remove some debug i put there.
2000-04-20  NotZed  <NotZed@HelixCode.com>

	* message-list.c:
	(ml_row_count): Oops, remove some debug i put there.

svn path=/trunk/; revision=2535
2000-04-21 00:05:24 +00:00