Commit Graph

264 Commits

Author SHA1 Message Date
35a8813a48 modified some of the EPopupMenu structures to account for differences in
* mail-display.c: (pixmap_press): modified some of the EPopupMenu
	structures to account for differences in the popup menu API (as
	informed by Jeff.)

svn path=/trunk/; revision=6486
2000-11-07 19:03:10 +00:00
25dcc0b87a God, I sure wish people would listen when i'm saying i'm changing and API.
2000-11-07  Not Zed  <NotZed@HelixCode.com>

	* mail-display.c (on_object_requested): God, I sure wish people
	would listen when i'm saying i'm changing and API. I mean
	I even mailed everyone and everything.  Can't see any changelog
	either.

2000-11-06  Not Zed  <NotZed@HelixCode.com>

	* mail-autofilter.c (rule_from_message): Updates for api changes.

	* mail-tools.c (mail_tool_generate_forward_subject): Fixed for api
	changes.  Sigh, whoever wrote the multithread code of the mailer,
	had little idea.  You can't just lock for getting a const value,
	until you are finished with it, cause the owner still owns it.
	Fixed this too.  Yuck, what a horrid forwarding format, can we
	change this, or make it configurable?  The mail headers show who
	forwarded it, we dont need to duplicate it in that UGLY subject.

	* mail-format.c (write_field_to_stream): Removed some jeffness.
	dont g_strdup stuff we dont need to, and remove the
	value_is_encoded thing since we can get the unencoded address
	now.
	(write_address): New function to write an address field.
	(write_headers): Uses write_address to write addresses, cleaner,
	fixed the god-awful unreadable indenting too.
	(handle_text_plain): Use a 'smarter' printf format, so we dont
	need to allocate and copy substrings unecessarily (esp since
	they're about to be allocated any copied another few times
	anyway *sigh*).
	(write_field_to_stream): Commented out the isprint check, which
	afaik serves no purpose.
	(list_add_addresses): New function to build a list of
	display-ready addresses.  Although I think the composer then uses
	these as internet-ready addresses.  It should probably take a list
	of CamelAddress's if thats what it wants.
	(mail_generate_reply): Cleaned up the address list creation stuff
	a heap, and fixes for camel api changes.  Also fixed a small
	memory leak as a side effect (fulladdr wasn't freed if it was the
	same as the sender).

	* mail-display.c (on_object_requested): Changed for interface
	changes to the from address.  I think passing the encoded
	(internet version) of the address is right here.

svn path=/trunk/; revision=6475
2000-11-07 12:33:01 +00:00
304ec439ae used Camel to parse the full address before passing the email address to
* mail-display.c: used Camel to parse the full address before passing
the email address to my iTip control.

svn path=/trunk/; revision=6462
2000-11-06 23:07:19 +00:00
6babb16217 added property bag support for Bonobo
controls, support which helps only the iTip control, currently.

svn path=/trunk/; revision=6318
2000-11-01 19:50:30 +00:00
ef363f6c57 Lots of fixes and simplifications. Should get rid of the "missing icon"
* mail-display.c (pixbuf_gen_idle): Lots of fixes and
	simplifications. Should get rid of the "missing icon" problem.
	There is still a problem with some images failing to get
	thumbnails, even though they display correctly.
	(pixbuf_for_mime_type): New function to try really hard to get the
	right icon for a MIME type, including looking in mc and nautilus's
	pixmap directories.
	(on_object_requested): Always use pixbuf_gen_idle, even for
	non-image types, to prevent code duplication.

svn path=/trunk/; revision=6317
2000-11-01 19:19:31 +00:00
fa4b2f89b7 Don't destroy a dialog after run_and_close'ing it.
* mail-display.c (write_data_to_file): Don't destroy a dialog
	after run_and_close'ing it.

svn path=/trunk/; revision=6203
2000-10-26 16:24:21 +00:00
360675f54b lots of i18n fixes
svn path=/trunk/; revision=6143
2000-10-24 05:23:27 +00:00
de0c82f382 Made the top of the folder browser a little prettier.
2000-10-23  Christopher James Lahey  <clahey@helixcode.com>

	* folder-browser.c: Made the top of the folder browser a little
	prettier.

	* mail-display.c, mail-vfolder.c: Made more dialogs resizable.

svn path=/trunk/; revision=6126
2000-10-23 19:31:14 +00:00
e42e84e2bf Make the vertical toolbar always visible in the message list and the
message view (patch pulled up from the evolution-0-6-branch).

svn path=/trunk/; revision=6112
2000-10-22 21:19:07 +00:00
a701db6108 Make all the CLists have passive titles. (identity_dialog): Make the
2000-10-18  Iain Holmes  <iain@helixcode.com>

        * mail-config-gui.c (mail_config): Make all the CLists have passive
        titles.
        (identity_dialog): Make the default button the "OK" button, and set
        the dialog to close on pressing return on the entryboxes.

svn path=/trunk/; revision=5996
2000-10-18 17:55:24 +00:00
ee5eeb1dd2 No, we REALLY dont want to perform an immediate search as the keys are
2000-10-18  Not Zed  <NotZed@HelixCode.com>

        * folder-browser.c (folder_browser_gui_init): No, we REALLY dont
        want to perform an immediate search as the keys are pressed.

        * mail-display.c (on_object_requested): Kill a minor warning with
        a cast.

        * mail-config.c: Include mising ctype.h to kill a warning.

        * message-thread.c (main): Fixed the test case for api changes.

        * message-list.c (message_list_drag_data_get): Set some flags to
        get_folder().  I dont even think this will work because
        mail_tool_get_folder doesn't handle file url's.

        * mail-vfolder.c (vfolder_uri_to_folder): Pass appropriate flags.

        * mail-ops.c (do_setup_folder): Pass appropriate flags.  Hmm,
        whats the difference between setup and create.  *shrug*
        (do_create_folder): Pass appropriate flags to get_folder.  Needs a
        way to specify the index flag.

        * mail-tools.c (mail_tool_get_folder_from_urlname): Changed create
        to flags argument.
        (mail_tool_get_local_inbox_url): Add an index argument.
        (mail_tool_get_local_inbox): honour index flag.
        (mail_tool_get_inbox): Changed for api change.
        (mail_tool_uri_to_folder): Fixed calls to store_get_folder();

        * mail-local.c (load_metainfo): Added an indexed field to the metainfo.
        (save_metainfo): And save it too.
        (do_reconfigure_folder): Honour index flag when creating the new
        folder.  Do not open the old folder with an index at all.
        (mail_local_map_uri): Add an index argument - tells if the mbox is
        indexed.
        (mail_tool_local_uri_to_folder): Create & pass flags properly.
        (#include gnome.h): Dont include all of gnome, just what we use,
        and explicity include xml-memory, so we get xmlFree().

svn path=/trunk/; revision=5979
2000-10-18 06:13:12 +00:00
2deab9c417 Add the stuff to make evolution-mail a summary providing component. :)
svn path=/trunk/; revision=5738
2000-10-05 00:38:06 +00:00
bf7c104d03 Add a cache for the pixbufs, hashed on CID, so that we only have to make a
2000-10-02  Iain Holmes  <iain@helixcode.com>

	* mail-display.[ch]: Add a cache for the pixbufs, hashed on CID,
	so that we only have to make a thumbnail once.

2000-10-01  Iain Holmes  <iain@helixcode.com>

	* mail-display.c: Generate the thumbnails on an idle function so that
	the user interface isn't locked. Checks in case the widget it will
	use to display the image isn't destroyed.

svn path=/trunk/; revision=5653
2000-10-02 00:47:13 +00:00
f8b0f806ed Eye-candy, eye-candy.
Added attachment image thumbnailing to mail-display.c

svn path=/trunk/; revision=5649
2000-10-01 03:48:33 +00:00
37d47c916d Added check for gnome-app-lib. Removed directories that have been moved to
2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* configure.in: Added check for gnome-app-lib.  Removed
	directories that have been moved to gal.

From addressbook/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* backend/ebook/Makefile.am, contact-editor/Makefile.am,
	ename/Makefile.am, gui/component/Makefile.am,
	gui/widgets/Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* backend/ebook/e-card.c, backend/pas/pas-backend-file.c,
	contact-editor/e-contact-editor-address.c,
	contact-editor/e-contact-editor-categories.c,
	contact-editor/e-contact-editor-categories.h,
	contact-editor/e-contact-editor-fullname.c,
	contact-editor/e-contact-editor.c,
	contact-editor/e-contact-save-as.c, ename/e-address-western.c,
	ename/test-ename-western-gtk.c,
	gui/component/addressbook-factory.c, gui/component/addressbook.c,
	gui/component/e-cardlist-model.h, gui/component/e-ldap-storage.c,
	gui/component/select-names/e-select-names-bonobo.c,
	gui/component/select-names/e-select-names-manager.c,
	gui/component/select-names/e-select-names-model.c,
	gui/component/select-names/e-select-names-table-model.c,
	gui/component/select-names/e-select-names-table-model.h,
	gui/component/select-names/e-select-names-text-model.h,
	gui/component/select-names/e-select-names.c,
	gui/component/select-names/e-select-names.h,
	gui/search/e-addressbook-search-dialog.c,
	gui/widgets/e-addressbook-model.h,
	gui/widgets/e-addressbook-view.c, gui/widgets/e-minicard-label.c,
	gui/widgets/e-minicard-view-widget.c,
	gui/widgets/e-minicard-view-widget.h,
	gui/widgets/e-minicard-view.c, gui/widgets/e-minicard-view.h,
	gui/widgets/e-minicard-widget.h, gui/widgets/e-minicard.c,
	gui/widgets/test-minicard-label.c, gui/widgets/test-reflow.c,
	printing/e-contact-print.c: Fixed the #include lines to deal
	properly with gal.

From calendar/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* gui/Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* gui/calendar-model.h, gui/e-calendar-table.c, gui/e-day-view.c,
	gui/e-week-view-event-item.c, gui/e-week-view.c,
	gui/event-editor.c, gui/gncal-todo.c, gui/gnome-cal.c, gui/main.c,
	gui/print.c, gui/dialogs/task-editor.c: Fixed the #include lines
	to deal properly with gal.

	* gui/check-filled.xpm: New file since we can't include it from
	e-table anymore.

From camel/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* camel-folder-search.c, camel-folder-search.h,
	camel-remote-store.c, providers/imap/camel-imap-folder.c,
	providers/imap/camel-imap-store.c: Fixed the #include lines to
	deal properly with gal.

From composer/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* e-msg-composer-address-dialog.c, e-msg-composer-address-entry.c,
	e-msg-composer-attachment.c, e-msg-composer-hdrs.c,
	e-msg-composer.c: Fixed the #include lines to deal properly with
	gal.

From e-util/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Removed all the files moved to gal.

	* e-dialog-widgets.c: Fixed the #include lines to deal properly
	with gal.

	* e-gui-utils.c, e-gui-utils.h: Removed all of the functionality
	that was moved to gal.

	* e-canvas-utils.c, e-canvas-utils.h, e-canvas-vbox.c,
	e-canvas-vbox.h, e-canvas.c, e-canvas.h, e-cursors.c, e-cursors.h,
	e-font.c, e-font.h, e-popup-menu.c, e-popup-menu.h, e-printable.c,
	e-printable.h, e-unicode.c, e-unicode.h, e-util.c, e-util.h,
	e-xml-utils.c, e-xml-utils.h: Moved to gal.

From filter/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* filter-editor.c, filter-filter.c, filter-folder.c,
	filter-input.c, filter-message-search.c, filter-option.c,
	filter-rule.c, score-editor.c, vfolder-editor.c, vfolder-rule.c:
	Fixed the #include lines to deal properly with gal.

From mail/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* component-factory.c, folder-browser-factory.c, folder-browser.c,
	mail-callbacks.c, mail-config-gui.c, mail-display.c,
	mail-display.h, main.c, message-list.c, message-list.h: Fixed the
	#include lines to deal properly with gal.

From po/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* POTFILES.in: Removed files that have been moved to gal.

From shell/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* e-component-registry.c, e-corba-storage-registry.c,
	e-corba-storage.c, e-folder-type-registry.c, e-folder.c,
	e-local-folder.c, e-local-storage.c,
	e-shell-folder-creation-dialog.c,
	e-shell-folder-selection-dialog.c, e-shell-folder-title-bar.c,
	e-shell-view.c, e-shell.c, e-shortcuts-view.c, e-shortcuts.c,
	e-storage-set-view.c, e-storage-set-view.h, e-storage-set.c,
	e-storage.c, evolution-local-storage.c, evolution-session.c,
	evolution-shell-client.c, evolution-shell-component-client.c,
	evolution-shell-component.c, evolution-shell-view.c,
	evolution-storage-listener.c, evolution-storage.c, main.c: Fixed
	the #include lines to deal properly with gal.

From widgets/meeting-time-sel/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* e-meeting-time-sel-list-item.c, e-meeting-time-sel.c,
	e-meeting-time-sel.h: Fixed the #include lines to deal properly
	with gal.

If you've read this far, you deserve a prize.  The first email in my
mailbox with the subject "What a commit message!" (and your physical
mailing address somewhere in the message) will receive a free Helix
Code T-shirt mailed to anywhere within the continental United States.
I cannot be held responsible for problems with email systems anywhere.
This is supposed to be for fun, so please don't make a fuss if
something goes wrong and your mail doesn't reach me.  Find my email
elsewhere in this message, and if it's been more than a few days,
you're probably too late.

From widgets/misc/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* e-calendar-item.c, e-calendar.c, e-calendar.h, e-title-bar.c:
	Fixed the #include lines to deal properly with gal.

	* e-scroll-frame.c, e-scroll-frame.h: Moved to gal.

From widgets/shortcut-bar/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Added $(EXTRA_GNOME_CFLAGS) and
	$(EXTRA_GNOME_LIBS).  Removed unneeded libraries.

	* e-icon-bar.c, e-icon-bar.h, e-shortcut-bar.c,
	e-shortcut-model.c, test-shortcut-bar.c: Fixed the #include lines
	to deal properly with gal.

From widgets/ChangeLog:

2000-09-18  Christopher James Lahey  <clahey@helixcode.com>

	* Makefile.am: Removed directories that have been moved to gal.

	* e-paned/.cvsignore, e-paned/Makefile.am, e-paned/e-hpaned.c,
	e-paned/e-hpaned.h, e-paned/e-paned.c, e-paned/e-paned.h,
	e-paned/e-vpaned.c, e-paned/e-vpaned.h: Moved to gal.

	* e-reflow/.cvsignore, e-reflow/Makefile.am,
	e-reflow/e-reflow-sorted.c, e-reflow/e-reflow-sorted.h,
	e-reflow/e-reflow.c, e-reflow/e-reflow.h: Moved to gal.

	* e-table/.cvsignore, e-table/ChangeLog, e-table/LICENSE,
	e-table/Makefile.am, e-table/ROADMAP.e-table, e-table/TODO,
	e-table/add-col.xpm, e-table/arrow-down.xpm, e-table/arrow-up.xpm,
	e-table/check-empty.xpm, e-table/check-filled.xpm,
	e-table/clip.png, e-table/e-cell-checkbox.c,
	e-table/e-cell-checkbox.h, e-table/e-cell-string.c,
	e-table/e-cell-text.c, e-table/e-cell-text.h,
	e-table/e-cell-toggle.c, e-table/e-cell-toggle.h,
	e-table/e-cell-tree.c, e-table/e-cell-tree.h, e-table/e-cell.c,
	e-table/e-cell.h, e-table/e-table-click-to-add.c,
	e-table/e-table-click-to-add.h, e-table/e-table-col-dnd.h,
	e-table/e-table-col.c, e-table/e-table-col.h,
	e-table/e-table-column-model.h, e-table/e-table-column.c,
	e-table/e-table-config.c, e-table/e-table-config.glade,
	e-table/e-table-config.glade.h, e-table/e-table-config.h,
	e-table/e-table-defines.h, e-table/e-table-example-1.c,
	e-table/e-table-example-2.c,
	e-table/e-table-field-chooser-dialog.c,
	e-table/e-table-field-chooser-dialog.h,
	e-table/e-table-field-chooser-item.c,
	e-table/e-table-field-chooser-item.h,
	e-table/e-table-field-chooser.c,
	e-table/e-table-field-chooser.glade,
	e-table/e-table-field-chooser.glade.h,
	e-table/e-table-field-chooser.h,
	e-table/e-table-group-container.c,
	e-table/e-table-group-container.h, e-table/e-table-group-leaf.c,
	e-table/e-table-group-leaf.h, e-table/e-table-group.c,
	e-table/e-table-group.glade, e-table/e-table-group.glade.h,
	e-table/e-table-group.h, e-table/e-table-header-item.c,
	e-table/e-table-header-item.h, e-table/e-table-header.c,
	e-table/e-table-header.h, e-table/e-table-item.c,
	e-table/e-table-item.h, e-table/e-table-model.c,
	e-table/e-table-model.h, e-table/e-table-one.c,
	e-table/e-table-one.h, e-table/e-table-scrolled.c,
	e-table/e-table-scrolled.h, e-table/e-table-selection-model.c,
	e-table/e-table-selection-model.h, e-table/e-table-simple.c,
	e-table/e-table-simple.h, e-table/e-table-size-test.c,
	e-table/e-table-sort-info.c, e-table/e-table-sort-info.h,
	e-table/e-table-sorted-variable.c,
	e-table/e-table-sorted-variable.h, e-table/e-table-sorted.c,
	e-table/e-table-sorted.h, e-table/e-table-sorter.c,
	e-table/e-table-sorter.h, e-table/e-table-subset-variable.c,
	e-table/e-table-subset-variable.h, e-table/e-table-subset.c,
	e-table/e-table-subset.h, e-table/e-table-text-model.c,
	e-table/e-table-text-model.h, e-table/e-table-tooltip.h,
	e-table/e-table-tree.h, e-table/e-table.c, e-table/e-table.h,
	e-table/e-tree-example-1.c, e-table/e-tree-example-2.c,
	e-table/e-tree-model.c, e-table/e-tree-model.h,
	e-table/e-tree-simple.c, e-table/e-tree-simple.h,
	e-table/image1.png, e-table/image2.png, e-table/image3.png,
	e-table/remove-col.xpm, e-table/sample.table,
	e-table/table-test.c, e-table/table-test.h, e-table/test-check.c,
	e-table/test-cols.c, e-table/test-table.c: Moved to gal.

	* e-text/.cvsignore, e-text/Makefile.am, e-text/e-entry-test.c,
	e-text/e-entry.c, e-text/e-entry.h,
	e-text/e-text-event-processor-emacs-like.c,
	e-text/e-text-event-processor-emacs-like.h,
	e-text/e-text-event-processor-types.h,
	e-text/e-text-event-processor.c, e-text/e-text-event-processor.h,
	e-text/e-text-model.c, e-text/e-text-model.h,
	e-text/e-text-test.c, e-text/e-text.c, e-text/e-text.h: Moved to
	gal.

i.e.,

...

changed evolution to work with gal.

svn path=/trunk/; revision=5490
2000-09-18 03:43:20 +00:00
d15ae57732 Fixed some warnings.
2000-09-11  Christopher James Lahey  <clahey@helixcode.com>

	* mail-display.c: Fixed some warnings.

svn path=/trunk/; revision=5327
2000-09-11 17:37:08 +00:00
040ff5ad09 Another big rewrite of this stuff. Now all (well, most) attachments get a
* mail-display.c, mail-format.c: Another big rewrite of this
	stuff. Now all (well, most) attachments get a small icon with a
	description and a (non-obvious) right-click pop-up menu with
	options to save, open in an external program, or show/hide inline.

	TODO: antialias the icon, add more options to the pop-up for
	certain MIME types, add an icon to the headers, fix PGP to work
	like everything else, fix message/external-body to work again,
	add some icon caching action, etc, etc.

svn path=/trunk/; revision=5326
2000-09-11 17:12:57 +00:00
d9da6499c0 camel_mime_part_get_filename now deals with both Content-Disposition and
* mail-display.c (make_safe_filename):
	* mail-format.c (handle_mystery):
	* mail-identify.c (mail_identify_mime_part):
	camel_mime_part_get_filename now deals with both
	Content-Disposition and Content-Type.

svn path=/trunk/; revision=5215
2000-09-05 23:12:27 +00:00
906a178ce8 Goodbye, GDK_THREADS!
svn path=/trunk/; revision=5074
2000-08-28 14:36:26 +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
24feba2033 Whole buncha leak fixes thanks to Purify
svn path=/trunk/; revision=4862
2000-08-17 14:19:02 +00:00
b9cc4db255 Redo this again. Get rid of struct mail_format_data and move most of that
* mail-display.c, mail-format.c: Redo this again. Get rid of
        struct mail_format_data and move most of that info into
        MailDisplay itself, and pass the MailDisplay around. Add a GData**
        to MailDisplay, and put the urls hash table into that. Also add
        the ability to redisplay the currently-displayed message (with the
        same GData**), and add a "show_pgp" datum to it that controls
        whether or not to decrypt PGP messages, and redo the PGP stuff
        (again) to take that into account. Now you don't get the annoying
        PGP password dialog box without any warning.

svn path=/trunk/; revision=4757
2000-08-11 22:22:27 +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
8cb514d6dd Merge with camel-async.
svn path=/trunk/; revision=4687
2000-08-10 17:30:50 +00:00
747b818cbd Support controls as well as embeddables.
* mail-display.c (on_object_requested): Support controls as well
	as embeddables.

svn path=/trunk/; revision=4663
2000-08-09 19:58:32 +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
0a9fdd8842 s/strncasecmp/g_strncasecmp
2000-08-07  Jeffrey Stedfast  <fejj@helixcode.com>

	* mail-display.c:
	* component-factory.c: s/strncasecmp/g_strncasecmp

	* 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=4575
2000-08-07 18:32:55 +00:00
324b1e8675 New code to spawn off GPG/PGP to do stuff. Currently only deals with
* mail-crypto.c: New code to spawn off GPG/PGP to do stuff.
	Currently only deals with decryption. From Nathan Thompson-Amato
	<ndt@jps.net>, with bunches of changes from me.

	* session.c (mail_request_dialog): Expose the password dialog to
	the rest of the app (for use by the GPG/PGP code).

	* mail-format.c (handle_text_plain): Handle special inline data
	types. (Currently uuencoding, BinHex, and PGP encryption.) This is
	not the best way to deal with it, but it works for now.
	(try_inline_pgp): Convert an inline PGP-encrypted message into a
	multipart/encrypted part.
	(try_inline_binhex): Convert an inline BinHex attachment into an
	application/mac-binhex40 part (which we currently don't deal
	with...)
	(try_uudecoding): Convert a uuencoded attachment to an
	application/octet-stream part.
	(handle_multipart_encrypted): Deal with RFC2015 MIME-encoded PGP
	encrypted messages. (From ndt.)

	* mail-display.c (mail_text_write, mail_error_write): New utility
	functions.

	* Makefile.am (evolution_mail_SOURCES): add mail-crypto.c

svn path=/trunk/; revision=4466
2000-08-02 02:56:48 +00:00
570714db1d Update for OAF and for external apps as well as components.
* mail-format.c (lookup_handler): Update for OAF and for external
	apps as well as components.
	(handle_via_external): Handler to set up for data that can be
	displayed by an external application.

	* mail-display.c (on_link_clicked, etc): Refactor the save_data()
	code and add launch_external() as a handler for
	x-evolution-external URLs.
	(embeddable_destroy_cb): Remove this, since it seems like it's all
	wrong.
	(on_object_requested): Update for OAF, and fix some bugs.

svn path=/trunk/; revision=4343
2000-07-26 04:13: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
53faeaabcc Use the gnomevfs sniff buffer interface to try to identify the MIME type
* mail-identify.c (mail_identify_mime_part): Use the gnomevfs
	sniff buffer interface to try to identify the MIME type when
	everything else fails.

	* mail-display.c (on_object_requested):
	* mail-format.c (lookup_handler, handle_undisplayable,
	handle_audio): s/gnome_mime/gnome_vfs_mime/

	* Makefile.am: Add gnomevfs stuff

svn path=/trunk/; revision=3893
2000-07-05 19:47:35 +00:00
7ad9e59992 call mail_display_set_message with NULL if the message we tried to select
* message-list.c (select_msg): call mail_display_set_message with
	NULL if the message we tried to select doesn't exist (probably
	meaning we tried to selecte the first message and the folder is
	empty.)

	* mail-display.c (mail_display_set_message): deal with NULL as an
	input (meaning "undisplay previous message and display nothing").

svn path=/trunk/; revision=3879
2000-07-04 00:56:45 +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
746f1858b4 Make the mail folder browser use EScrollFrame for a nicer look.
svn path=/trunk/; revision=3328
2000-06-01 05:34:13 +00:00
74ff74bf9b Initialize the "urls" hash table stored on the message and store cid and
* mail-format.c (mail_format_mime_message): Initialize the "urls"
	hash table stored on the message and store cid and other URLs
	there rather than as object data on the message.
	(get_cid): rewrite this a bunch
	(handle_text_enriched): move the code from write_iframe_string()
	into here, since it's the only place that actually needs it.
	(handle_text_html): simplify this a lot. We can use a cid: URL
	here rather than x-evolution-data.
	(get_url_for_icon): New routine to return URLs for icons, and
	cache the results, so we don't have to keep re-reading the icon
	files (and so we can't be spoofed into reading non-icon files).
	(handle_mystery, handle_audio): use get_url_for_icon.

	* mail-display.c (save_data): move the CamelMimePart filename
	extracting code from get_cid to here.
	(on_link_clicked, on_object_requested): Update for cid: changes.
	(on_url_requested): Kill off the kludgy, exploitable x-gnome-icon
	URL schema, update cid and x-evolution-data to match
	mail-format.c.

	It should now be easier to implement RFC 2557 (Content-Location,
	etc), but that RFC still pretty much sucks.

svn path=/trunk/; revision=3314
2000-05-31 20:47:22 +00:00
ae15900672 Redo this back to the old way: a single GtkHTML with various things inline
* mail-format.c: Redo this back to the old way: a single GtkHTML
        with various things inline in it. (Gets rid of flicker, simplifies
        some scrolling, selecting, and printing issues.)
        (handle_text_enriched, handle_text_html): Use <iframe>s for these,
        to protect the rest of the document from their possibily invalid
        HTML.
        (handle_via_bonobo): Use (new-and-improved) <object> tags for
        this, moving most of the work back into mail-display.c

        * mail-display.c (on_object_requested): Move the Bonobo embedding
        code back here again (reorganized a bit).
        (on_url_requested): add x-evolution-data handler, for iframe
        bodies.
        (mail_html_new, mail_html_end): removed
        (mail_display_set_message, mail_display_new): Update for NWO.

svn path=/trunk/; revision=3312
2000-05-31 14:29:24 +00:00
0a232b36bf Updated for the GtkHTML API changes. Also fixed some compiler
warnings here and there.

svn path=/trunk/; revision=3145
2000-05-21 09:18:20 +00:00
ccd4d84234 Fixes for stream stuff.
2000-05-19  NotZed  <NotZed@HelixCode.com>

        * mail-format.c: Fixes for stream stuff.

        * mail-display.c (save_data_cb): Remove exception stuff on streams.

svn path=/trunk/; revision=3143
2000-05-19 19:59:06 +00:00
961fe94bb9 Use camel_data_wrapper_write_to_stream rather than
* mail-display.c (save_data_cb, save_data, on_url_requested):
	* mail-format.c (handle_text_plain_flowed, handle_text_html):
	Use camel_data_wrapper_write_to_stream rather than
	camel_data_wrapper_get_output_stream.

svn path=/trunk/; revision=3113
2000-05-18 01:03:00 +00:00
9634ad0484 Call a kludge a kludge. (And an insecure kludge at that.)
svn path=/trunk/; revision=3000
2000-05-12 00:10:26 +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
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
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
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
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
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
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
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
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