Commit Graph

44 Commits

Author SHA1 Message Date
e3713d58cd fix warning message, outlook->mbox.
2002-11-19  Not Zed  <NotZed@Ximian.com>

        * importers/evolution-mbox-importer.c (mail_importer_module_init):
        fix warning message, outlook->mbox.

        * importers/Makefile.am: fix serverdir to point to
        $libdir/bonobo/servers.

        * mail-callbacks.c (addrbook_sender): add type to
        bonobo_widget_set_property.

        * mail-vfolder.c (vfolder_editor_response): dont unref after destroy.

        * mail-session.c (pass_response): dont unref aftrer destroy.

        * mail-local.c (reconfigure_response): dont unref after destroy.

        * mail-display.c (launch_cb): dont unref after destroy.
        (launch_cb): "
        (drag_data_get_cb): "
        (html_button_press_event): add type to bonobo_widget::set_property

        * mail-config.c (mail_config_check_service): dont unref after
        destroy.

        * component-factory.c (send_receive_cb): dont unref after destroy.
        (request_quit): "

        * mail-signature-editor.c (mail_signature_editor): Use version 3.0
        of gtkhtml editor interfaces.
        (do_exit): dont unref after destroy.
        (format_html_cb): Add type to bonobo_widget::set_property.

svn path=/trunk/; revision=18837
2002-11-19 05:03:29 +00:00
4ff0a43cd4 Use g_object_weak_ref rather than connecting to destroy.
2002-11-14  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-accounts.c (account_edit_clicked): Use g_object_weak_ref
	rather than connecting to destroy.
	(account_add_clicked): Same.

	* mail-callbacks.c (addrbook_sender): Make this use
	g_object_weak_notify also.
	(subscribe_dialog_destroy): Add NULL guards here since I think we
	really do want to connect to the "destroy" signal in the function
	that connects us to that signal.

	* mail-config-factory.c (config_control_factory_cb): Same.

	* mail-display.c (save_part): Here too.
	(make_popup_window): And here.

	* mail-send-recv.c (build_dialogue): Same here.

	* mail-summary.c (create_summary_view): Use g_object_weak_notify
	instead of connecting to the destroy signal.

svn path=/trunk/; revision=18764
2002-11-14 23:26:55 +00:00
bc9886539a Do not #include <libgnome/gnome-defs.h>. Likewise. Likewise. Likewise.
* mail-format.c: Do not #include <libgnome/gnome-defs.h>.
* mail-importer.c: Likewise.
* mail-mt.c: Likewise.
* mail-ops.c: Likewise.
* mail-search-dialogue.c: Likewise.
* mail-session.c: Likewise.
* mail-vfolder.c: Likewise.
* message-tag-followup.c: Likewise.
* main.c: Likewise, and <libgnomeui/gnome-init.h>.

* mail-callbacks.c: Do not #include <libgnome/gnome-paper.h>.
(do_mail_print): Remove the GnomePaper local variable.

svn path=/trunk/; revision=18739
2002-11-13 16:46:52 +00:00
f9804e1193 Commented out stuff that doesn't build yet. Also fixed idl build rule.
2002-11-13  Not Zed  <NotZed@Ximian.com>

	* Makefile.am: Commented out stuff that doesn't build yet.  Also
	fixed idl build rule.  importers still not built.

	* main.c (main): bonobactivationise.  remove push visual/colormap.
	(main): no longer activate activation, let bonobo_init do it.

	* mail-signature-editor.c (menu_help): Change help api.

	* mail-session.c (user_message_destroy_noreply): removed.  Not
	used?

	* mail-local.c (load_metainfo): xml root->children.

	* mail-format.c (g_string_append_len): Removed, it exists now.

2002-11-12  Not Zed  <NotZed@Ximian.com>

	* subscribe-dialog.c: gnome2ised, use gtkdialog.
	(subscribe_get_global_extras): use a weak ref rather than destroy signal.

	* message-tag-followup.c: gnome2ised.

	* message-tag-editor.c: gnome2ised & converted to gtkdialog.

	* message-list.c: gnome2ised.
	(message_list_finalise): From destroy method.  maybe should be
	destroy still.

	* message-browser.c: port to gnome2
	(message_browser_finalise): renamed from destroy method.

	* mail-stream-gtkhtml.c: removed redundant
	camel_class_get_global_classfuncs() call.

	* mail-signature-editor.c: gtkdialogised, & bonobo api changes.


	* mail-search-dialogue.c: gtkdialogised.

	* mail-folder-cache.c: cleaned up camel ref/hook casts.

	* mail-composer-prefs.c (mail_composer_prefs_get_type): convert to
	gtype.

	* mail-font-prefs.c (mail_font_prefs_destroy): from finalise.

	* mail-config.c: s/bonobo_config/e_config_listener/
	Added /apps/Evolution prefix to the evolution keys.
	Changed to use e_config_listener, etc.
	(mail_config_init): remove bonobo_config stuff.
	(mail_config_check_service): gtk dialogise.
	(check_response): from check_cancelled.

	* mail-config-druid.c (mail_config_druid_destroy): renamed from
	_finalize, turned into destroy handler.
	(construct): set type to toplevel, GTK_WINDOW_DIALOG no longer exists.

	* mail-config-factory.c (mail_config_register_factory): bonobo api
	changes.

	* mail-crypto.c (mail_crypto_get_pgp_cipher_context): cleaned up
	unref casts.

	* mail-display.c (write_data_to_file): gnome->gtkdialog.
	(on_link_clicked): use ascii_str*cmp on url.
	(save_part): g_path stuff.
	(launch_cb): gtk dialog.
	(pixmap_press): de-oafify.
	(pixbuf_for_mime_type): gnome-vfs api changes.
	(do_attachment_header): Change the pixmap to a gtkimage.
	(do_signature): "
	(pixbuf_gen_idle): "
	(do_attachment_header): ascii_str*cmp
	(do_attachment_header): gnome pixmap->gtkimage.
	(mail_display_destroy): protect against gtk mentalness.
	(html_button_press_event): ascii_str*cmp
	(drag_data_get_cb): added comment for translators of filename.

	* mail-format.c (component_supports): de-oafise.
	(is_anonymous): ascii_strncmp
	(attachment_header): remove utf8<>locale stuff, and gnomevfs api
	changes.
	(format_mime_part): fix g_strdown call.
	(write_field_row_begin): kill utf8->gtk stuff.
	(write_address): "
	(default_header_index): ascii_strcasecmp
	(handle_text_plain): "
	(handle_text_enriched): "
	(handle_multipart_encrypted): remove utf/gtk stuff.
	(handle_message_external_body): ascii_str*cmp

	* mail-identify.c (mail_identify_mime_part):
	(identify_by_magic): gnome vfs api changes.

	* mail-importer.c: Converted.

	* mail-local.c (load_metainfo): xml childs -> children.
	(mls_get_folder): g_strerror.
	(mls_delete_folder): g_strerror.
	(reconfigure_got_folder): Gnome->GtkDialog
	(reconfigure_response): from reconfigure_clicked.

	* mail-mt.c (mail_msg_check_error): gnome -> gtk dialog
	(error_response): renmae from error_gone.  destroy widget on any
	response.

	* mail-offline-handler.c (impl_finalise): renamed from
	impl_destroy since thats what it should be anyway.

	* mail-ops.c: removed utf8 widget conversion & camel_object_un/ref
	casts.

	* mail-preferences.c (mail_preferences_get_type): glib2'ised.

	* mail-search.c (mail_search_finalise): renmaed from destroy &
	properly chain.
	(mail_search_get_type): glib2 & make gtkdialog parent.
	(entry_run_search): run search when entry activated.  not sure if
	gtkdialog has anohter way to do this on an arbitrary widget.

	* mail-send-recv.c (dialogue_response): renamed from clicked.  Use
	gtkdialog.

	* mail-session.c (request_password_deleted): removed, redundant.
	(pass_response): rename from pass_got, changed for gtkdialog.
	(user_message_destroy): Removed, redundant.
	(user_message_response): Renamed from user_message_clicked.

2002-11-11  Not Zed  <NotZed@Ximian.com>

	* mail-stream-gtkhtml.c (mail_stream_gtkhtml_class_init): dont use
	get_global_classfuncs, just get the type

	* mail-tools.c: converted gnome2 api's.

	* mail-vfolder.c (vfolder_editor_response): clicked->response.
	(vfolder_editor_destroy): Removed.
	(vfolder_edit): gtk dialog api
	(edit_rule_response): clicked->response.
	(vfolder_edit_rule): gnomedialog->gtkdialog.
	(vfolder_gui_add_rule): "
	(new_rule_clicked): clicked->response

svn path=/trunk/; revision=18723
2002-11-12 14:59:35 +00:00
03224d610f Add the new-mail-notify rule to the filter driver before adding the user
2002-10-15  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (main_get_filter_driver): Add the new-mail-notify
	rule to the filter driver before adding the user defined filter
	rules so that we can be sure that the new-mail-notify rule gets
	invoked. Fixes bug #32328.

	* mail-composer-prefs.c (mail_composer_prefs_new_signature): Make
	sure that name[0] cannot ever be NULL. Should maybe fix bug
	#32230.

svn path=/trunk/; revision=18374
2002-10-16 04:07:31 +00:00
de6d723803 translate prompt from utf8 to gtk widget. #31365.
2002-09-30  Not Zed  <NotZed@Ximian.com>

        * mail-session.c (request_password): translate prompt from utf8 to
        gtk widget.  #31365.

svn path=/trunk/; revision=18258
2002-09-30 04:33:12 +00:00
a277676c45 Fix for filter driver api change.
2002-09-19  Not Zed  <NotZed@Ximian.com>

	* mail-session.c (main_get_filter_driver): Fix for filter driver
	api change.

svn path=/trunk/; revision=18114
2002-09-19 13:30:15 +00:00
828a107720 Don't bother overloading the timeout virtual methods since they don't
2002-08-21  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (class_init): Don't bother overloading the
	timeout virtual methods since they don't exist anymore.

	* mail-folder-cache.c (mail_note_store): Register a ping timeout
	callback to ping each store to keep the connections alive.

svn path=/trunk/; revision=17831
2002-08-21 19:23:44 +00:00
ce3ae88564 If we are not in interactive mode, don't display error dialogs.
2002-08-05  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-mt.c (mail_msg_check_error): If we are not in interactive
	mode, don't display error dialogs.

	* component-factory.c (interactive_cb): Updated to use the new
	function mail_session_set_interactive().
	(owner_unset_cb): Same here.

	* mail-session.c (mail_session_set_interactive): Renamed from
	mail_session_enable_interaction().
	(mail_session_get_interactive): New function to get the
	interactive state.

svn path=/trunk/; revision=17702
2002-08-05 21:20:59 +00:00
44a36d8abf (request_password): Left-align the check button's
label.

svn path=/trunk/; revision=17637
2002-07-29 22:06:38 +00:00
d8b5268c12 (request_password): Add an accelerator for the
"Remember this password" checkbox.

svn path=/trunk/; revision=17631
2002-07-29 16:13:59 +00:00
6ea2a4da8b Update to take argc and argv arguments since this is the new definition
2002-07-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-ops.c (mail_execute_shell_command): Update to take argc and
	argv arguments since this is the new definition for the
	CamelFilterDriverShellFunc.

	* mail-session.c (main_get_filter_driver): Updated for the renamed
	function.

svn path=/trunk/; revision=17585
2002-07-25 07:46:06 +00:00
f9a7422465 Account for the case that when a disco store is "online" but actually
2002-07-15  Peter Williams  <peterw@ximian.com>

	* mail-offline-handler.c (service_is_relevant): Account for the case
	that when a disco store is "online" but actually offline and we're
	going online, we should actually connect it.

	* component-factory.c (mail_load_storages): Always set auto_connect
	to FALSE, same reason as below.

	* mail-session.c (mail_session_init): Initialize our session to not be online,
	since the shell will tell us to go online if we need to.

svn path=/trunk/; revision=17459
2002-07-15 15:00:05 +00:00
65431a3347 Flush the filter log to make Tuomas happy :-)
2002-05-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-ops.c (filter_folder_free): Flush the filter log to make
	Tuomas happy :-)

	* mail-session.c (mail_session_flush_filter_log): New convenience
	function to flush the session's filter log file.

svn path=/trunk/; revision=16696
2002-05-06 21:39:10 +00:00
865606984f New function that implements the Redirect feature.
2002-01-29  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (redirect): New function that implements the
	Redirect feature.

	* mail-ops.c (mail_send_message): If we are redirecting a message,
	get the Resent-* recipients otherwise get the normal To/Cc/Bcc
	recipients and use them in the CamelTransport::send_to() method.

	* mail-session.c (main_get_filter_driver): Set the beep_func to
	the beep_cb, not the play_sound_func. Oops ;-)

	* folder-browser-ui.c: Add Redirect bonobo verb thingy here.
	(folder_browser_ui_set_selection_state): Add MessageRedirect to
	the proper string arrays.

svn path=/trunk/; revision=15511
2002-01-29 21:06:01 +00:00
d656b69c9b This wrapper for gdk_beep().
2002-01-24  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (session_system_beep): This wrapper for gdk_beep().

svn path=/trunk/; revision=15460
2002-01-24 21:06:12 +00:00
9d39da64dc When connecting to the transport username changed event, pass the
2002-01-08  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-account-gui.c (mail_account_gui_new): When connecting to
	the transport username changed event, pass the gui->transport not
	the gui->source.

svn path=/trunk/; revision=15266
2002-01-08 20:32:54 +00:00
1cca6b2433 Renamed. (mail_config_get_new_mail_notify_sound_file): Renamed.
2002-01-07  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config.c (mail_config_set_new_mail_notify_sound_file): Renamed.
	(mail_config_get_new_mail_notify_sound_file): Renamed.

	* mail-accounts.c (notify_radio_toggled): Replace EXEC with
	PLAY_SOUND.
	(construct): renamed the exec_command stuff to play_sound.

	* main.c (main): Init and shutdown gnome_sound.

	* mail-ops.c (fetch_mail_fetch): Don't do any new-mail
	notification here.
	(filter_folder_filter): call camel_filter_driver_flush.

	* mail-session.c (main_get_filter_driver): Set the filter-driver
	exec_func here instead.

	* mail-ops.c (mail_fetch_mail): Don't set the filter-driver
	exec_func here.

svn path=/trunk/; revision=15263
2002-01-08 00:48:54 +00:00
ace512904b Call e_passwords_remember_password() for account passwords if the user set
2001-11-13  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (pass_got): Call e_passwords_remember_password()
	for account passwords if the user set the "remember password"
	checkbox.

svn path=/trunk/; revision=14696
2001-11-14 18:36:14 +00:00
0
093a00cf2b Argh!!! Dont free the async op data here, the async op is still running
2001-10-30    <NotZed@Ximian.com>

        * subscribe-dialog.c (fe_cancel_op_foreach): Argh!!! Dont free the
        async op data here, the async op is still running and will access
        it!  Just try to cancel it and mark it as cancelled (id == -1)
        (fe_done_subscribing): Only remove outselves from the hash table
        if we're not cancelled.  The handle should always be set here,
        since this code runs in the gui thread.

        * message-list.c (on_cursor_activated_idle): If nothing
        selected/cursor not activated, then select no message.

        * mail-folder-cache.c (update_1folder): Make the trash count
        optional on EVOLUTION_COUNT_TRASH, becuase some lusers are just
        too stupid to understand what its for.

        * component-factory.c (storage_xfer_folder): Return slightly
        better error codes for copying folders, since its not implemented
        yet.

        * mail-vfolder.c, mail-local.c, mail-folder-cache.c,
        message-list.c component-factory.c, mail-ops.c,
        subscribe-dialog.c, mail-session.c: d() out some debug printfs,
        w() out some warnings.

        * folder-browser-ui.c (folder_browser_ui_add_message): Fix typo,
        Resent->Resend.

svn path=/trunk/; revision=14412
2001-10-30 03:28:40 +00:00
4ca07463a0 More fixing of the license texts.
svn path=/trunk/; revision=14217
2001-10-27 18:21:05 +00:00
5
cab9406217 So apparently the uicomp can just 'vanish' while we're using it. Joy. Take
2001-10-25    <NotZed@Ximian.com>

	* folder-browser-ui.c (fbui_sensitize_timeout): So apparently the
	uicomp can just 'vanish' while we're using it.  Joy.  Take care of
	that case here, fixes #13482.
	(fbui_sensitise_item): Check here too just for kicks.

	* mail-folder-cache.c (store_finalised): If we can't destroy our
	async event, then queue another one to do it.
	(store_finalised_finish): And handle it here, until we can, then
	free it.
	(mail_note_store): Queue an async event to get folderinfo, dont
	use mail_get_folderinfo.
	(update_folders_get): thread-async event to retrieve the
	folderinfo, and build it, then queues gui-async event to update
	the gui.
	(add_unmatched_info): Taken from mail-ops, adds unmatched if
	required.
	(add_vtrash_info): From mail-ops, add trash if required.
	(update_folders): Thread async event to update gui.
	(mail_note_store): Ref the store and storage when created.
	(update_1folder): Changed to assume we have info_lock, and store
	updates in an updates list.
	(setup_folder): Same.
	(folder_changed): Changed to call update_1folder directly.
	(real_folder_changed): Removed.
	(mail_note_folder): Changed to call update_1folder directly.
	(real_note_folder): Removed.
	(store_folder_subscribed): Call setup_folder directly.
	(real_folder_created): Removed.
	(real_flush_update): Function that actually does the updates in
	the gui thread.
	(mail_note_store): Go back to using mail_get_folderinfo.
	(update_folders): Fixed upf ro changed api's.
	(unset_folder_info): Changed to queue pending updates.
	(real_folder_deleted): Removed.
	(store_folder_unsubscribed): Do the removal work directly.
	(mail_note_store): Dont link to finalised event of store - we now
	ref it.
	(mail_note_store_remove): If we have any pending updates, clear
	them out.  Also cancel any pending folderinfo retrieve operations.
	(update_folders): Remove our update from the storeinfo list, if it
	still exists.
	(update_1folder): Make 'sent folder shows all counts' optional via
	an environmental variable EVOLUTION_COUNT_SENT for all those
	bloody whinging lusers out there.
	(mail_note_store_remove): Unref the storage when done.

	* mail-mt.c (mail_async_event_emit): If we're in main and have a
	gui task, set it to run via an idle function.
	(idle_async_event): Wrapper for calling do_async_event from idle
	function, and freeing the message when done.
	(idle_async_event): Call mail_msg_free not free on the finished
	message.

	* component-factory.c (mail_remove_storage): Destroy the storage
	async.
	(store_disconnect): This does the work.
	(free_storage): Un-note the store when we remove it, so the store
	noting code can unref things properly.
	(idle_quit): Return false when done, dont loop.

2001-10-24    <NotZed@Ximian.com>

	* component-factory.c (owner_set_cb): Setup an async_event
	handler.
	(idle_quit): Try to destroy the async_event, or keep dropping out
	if it can't (deadlock).

	* mail-mt.c (do_async_event): Set the threadid of the thread we're
	running in so we know its running/which thread its in.
	(mail_async_event_emit): Added new argument 'type' which is the
	type of thread to execute against, gui or another one.  Fixed all
	callers.
	(mail_async_event_destroy): Return -1 if this operation will fail
	(deadlock possibility).  If we're in the thread of the task
	we're going to wait for, then return a failure (since we will
	deadlock).
	(mail_async_event_emit): Chagned to use MailAsyncFunc type as the
	function type, which just takes 3 void args, change args to suit.

	* mail-folder-cache.c (mail_note_store): Record the pending update
	events in a pending list.  We should really be able to use an
	async event for this, but that doesn't return to the gui loop when
	done :-/
	(update_folders): Remove from pending update when done.

svn path=/trunk/; revision=14101
2001-10-25 21:21:33 +00:00
1ffe0b3a24 (do_user_message): Setup the message_destroy_id when we setup the
destroy handler so it doesn't get called twice.

svn path=/trunk/; revision=13955
2001-10-23 20:57:23 +00:00
3
a0974e678a Removed, all functionality moved to mail-session.
2001-10-23    <NotZed@Ximian.com>

        * mail-mt.c (mail_user_message):
        (mail_get_password): Removed, all functionality moved to
        mail-session.

        * mail-config.c (mail_config_write_on_exit): Check
        threaded/preview hash is null before using it, its setup on demand
        so itmight nto be initialised here.

        * mail-session.c (request_password): Remove password_current
        stuff.
        (alert_user): Redont, similar to get_pass.  Do things as async as
        possible, and dont even wait for a response if we're not asking
        for the cancel button (this may or may not be right behaviour -
        need to check).  mail_user_message() code replaced from the stuff
        in mail-mt.c
        (MailSession): Added a lock field.
        (init): Setup lock.
        (finalise): fRee lock.
        (register_timeout): Redone.  We now allocate our own 'timeoutid's,
        and <> to the real things asynchronously.  Use async_event's so we
        can make sure we have no outstanding ones after shutdown.
        (mail_session_enable_interaction): If interaction has been
        disabled, and we have either a message-box open, or a password
        request open and/or any pending message boxes/passwords, blow 'em
        away.
        (main_register_timeout): If we have pending remove of this same
        timeout, dont do anything.
        (timeout_timeout): Properly honour the result, remove the timout
        if it returns false.

svn path=/trunk/; revision=13952
2001-10-23 20:42:57 +00:00
3
343f36cffe Completely re-done. We now hae a completely async dialogue when requested
2001-10-23    <NotZed@Ximian.com>

        * mail-session.c (get_password): Completely re-done.  We now hae a
        completely async dialogue when requested from antoehr thread, and
        dont use gtk_main() if we can avoid it (which is normally the
        case).  This stuff is only partially finished, and will mena the
        removal of the same from mail-mt.c, and the mail_user_message()
        code will be moved here and changed to work in a similar way.

        * mail-callbacks.c (empty_trash): Dont try and connect to remote
        stores just to get the trash.  Also, always run empty trash async,
        and make sure we unref the trash.
        (empty_trash): Hmm, dont unref the trash, causes a problem on
        exit, i suspect something else is doing funky unrefs on it.

        * mail-tools.c (mail_tool_get_trash): Pass a 'connect' arg, tell
        it whether it should tryand connect or not to the parent service,
        if it isn't already connected.

        * component-factory.c (owner_unset_cb): Dont try wait_all here,
        could potentially deadlock.
        (idle_quit): Keep returning TRUE if we have outstanding
        processing.  Note that this may busy-wait during exit processign
        with busy tasks :(
        (idle_quit): Keep calling ourselves till we no longer get called
        (i.e. gtk_main really quits).

        * mail-mt.c (mail_msg_active): New function, returns TRUE if
        events are still active/outstanding.
        (do_op_status): @$@$#@@!#@!!  didn't unlock the mail_msg_lock if
        data->activity was NULL and we had no global_shell_client anymore!
        Also shortcut processing if this is going to be the case.
        (mail_msg_init): Setup a temporary other gui_port for redoing with
        new semantics password, user message and progress reporting.
        (mail_get_password): #ifdef'd out all this code temporarily, till
        it gets fully moved to mail-session.c

2001-10-22    <NotZed@Ximian.com>

        * component-factory.c (owner_set_cb): Dont call enable_interaction
        here.
        (interactive_cb): But here instead, let the shell tell us when its
        ok to go interactive.

svn path=/trunk/; revision=13933
2001-10-23 06:28:27 +00:00
8c85ed61ba Added an async_event handler to store_info. (mail_note_store): Setup async
* mail-folder-cache.c: Added an async_event handler to store_info.
	(mail_note_store): Setup async event handler here.
	(store_finalised): Flush out async events here.
	(folder_changed): Use async event handler to emit event.
	(mail_note_folder): Chagned, do most of the work in the calling
	context, only do the corba stuff in main.
	(store_folder_subscribed): Use async event, and do more work locally.
	(store_folder_unsubscribed): Same.
	(store_folder_deleted): Call store_folder_unsubscribed if we have
	to do any work.
	(store_folder_created): Call store_folder_subscribed if we have to
	do any work.
	(store_folder_unsubscribed): Ref store while busy.
	(real_folder_deleted): And unref here.
	(store_folder_subscribed): Reg store while busy.
	(real_folder_created): Unref here.
	(mail_note_folder): Ref folder while busy.
	(real_note_folder): And unref here.
	(mail_note_folder): Hook onto folder_deleted event.
	(folder_deleted): Just mark this folder as no longer available.

	* mail-session.c (register_timeout): Use mail_call_main instead of
	proxy_event.
	(remove_timeout): Same here.

	* folder-browser.c (folder_changed): use the new mail_async_event
	stuff.
	(folder_changed_main): Remove old async event handling stuff.
	(FOLDER_BROWSER_LOCK/UNLOCK): Removed.
	(FolderBrowserPrivate): Removed too, sigh.

	* mail-mt.c (mail_async_event_new, mail_async_event_emit,
	mail_async_event_destroy): New functions to handle async events.
	(mail_proxy_event, mail_proxy_event_id): Removed old functions for
	async events.
	(do_call): Add suport for MAIL_CALL_p_pp.
	(mail_msg_free): Use mail_async_event instead of proxy_event.

	* message-list.c (message_changed): Promote the message_changed to
	a folder_changed and use main_folder_changed to process it.
	(main_message_changed): Remove.d
	(message_list_init): Setup async event handler.
	(message_list_destroy): Remove async handler.
	(folder_changed): Use async hanler to emit event in main loop.
	(message_changed): Same.

svn path=/trunk/; revision=13698
2001-10-16 19:13:31 +00:00
5
3ac3a15e3c Proxy get-password call to main thread. (forget_password): same for
2001-10-15    <NotZed@Ximian.com>

        * mail-session.c (get_password): Proxy get-password call to main
        thread.
        (forget_password): same for forget_password.
        (get_filter_driver): and same for get_filter_driver, since it uses
        gtk objects.

        * mail-mt.c (mail_call_main): new generic interface for calling
        stuff/proxying in the gui thread.

svn path=/trunk/; revision=13679
2001-10-15 18:55:18 +00:00
c90ced3180 call e_passwords_init and e_passwords_shutdown.
2001-10-12  Chris Toshok  <toshok@ximian.com>

	* main.c (main): call e_passwords_init and e_passwords_shutdown.

	* mail-session.h: add prototypes for
	mail_session_{get,add}_password.

	* mail-session.c (init): empty this out - we use e_passwords
	instead of a local hashtable.
	(get_password): use e_passwords_get_password and
	e_passwords_add_password.
	(forget_password): use e_passwords_forget_password.
	(mail_session_remember_password): use
	e_passwords_remember_password.
	(mail_session_forget_password): use e_passwords_forget_password.
	(mail_session_get_password): new function, use
	e_passwords_get_password.
	(mail_session_add_password): same, use e_passwords_add_password.
	(mail_session_forget_passwords): use e_passwords_forget_passwords.

	* mail-config.c (mail_config_write_on_exit): fix this up so it
	works as desired with the e_passwords stuff.

svn path=/trunk/; revision=13640
2001-10-12 22:28:04 +00:00
8d4f5ab1c8 Pass an empty flags argument to mail_tool_uri_to_folder.
2001-10-02  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-vfolder.c (vfolder_setup_do): Pass an empty flags argument
	to mail_tool_uri_to_folder.
	(vfolder_adduri_do): Same.

	* mail-session.c (get_folder): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* mail-send-recv.c (receive_get_folder): Pass an empty flags
	argument to mail_tool_uri_to_folder.

	* mail-ops.c (get_folder_get): Pass the flags to
	mail_tool_uri_to_folder.
	(mail_get_folder): Now takes a flags argument.
	(remove_folder_get): Pass an empty flags argument to
	mail_tool_uri_to_folder.
	(mail_send_message): Pass an empty argument flag to
	mail_tool_uri_to_folder.
	(transfer_messages_transfer): Same. Destination folder should
	already be created by this time.

	* folder-info.c (do_get_info): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* importers/evolution-mbox-importer.c (folder_created_cb): Pass
	the CREATE flag here too.
	(load_file_fn): And here.
	(load_file_fn): And here too.

	* importers/evolution-outlook-importer.c (load_file_fn): Pass the
	CREATE flag to mail_tool_uri_to_folder.

	* folder-browser.c (folder_browser_new): Pass an empty flags
	argument.
	(x_evolution_message_parse): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* component-factory.c (create_folder): Pass a CREATE flag to
	mail_get_folder here too.
	(owner_set_cb): And here.
	(xfer_folder): Shouldn't need the CREATE flag here, so not passing
	any flags.
	(destination_folder_handle_drop): Same.

	* mail-local.c (mail_local_store_add_folder): Pass a CREATE flag
	to mail_get_folder.
	(reconfigure_folder_reconfigure): Pass an empty flags argument to
	mail_tool_uri_to_folder.

	* mail-tools.c (mail_tool_uri_to_folder): Take a flags argument.
	(mail_tool_get_local_inbox): Pass an empty flags argument to
	mail_tool_uri_to_folder.

svn path=/trunk/; revision=13353
2001-10-02 22:01:03 +00:00
7511816ec5 Perform a NULL-check. Hopefully fixes bug #7874.
2001-09-27  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (mail_session_remember_password): Perform a
	NULL-check. Hopefully fixes bug #7874.

svn path=/trunk/; revision=13198
2001-09-27 20:56:05 +00:00
3e079da9b6 Pass a 'cache-me' argument to mail_get_password.
2001-09-18  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (get_password): Pass a 'cache-me' argument to
	mail_get_password.

	* mail-mt.c (pass_got): Make less confusing...
	(mail_get_password): Now takes an argument 'cache' that allows our
	caller to determine if the user wanted to cache his/her password
	or not.
	(pass_got): Set the cache option.

svn path=/trunk/; revision=12950
2001-09-18 20:14:38 +00:00
6b6dbf0a9b zero-ize the password before freeing. (forget_password): Same.
2001-08-21  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (mail_session_forget_password): zero-ize the
	password before freeing.
	(forget_password): Same.

svn path=/trunk/; revision=12350
2001-08-21 19:27:56 +00:00
fc7ad0c9a9 This should return a GtkWidget not a GtkObject.
2001-08-07  Jeffrey Stedfast  <fejj@ximian.com>

	* subscribe-dialog.c (subscribe_dialog_new): This should return a
	GtkWidget not a GtkObject.

	* mail-session.c (get_filter_driver): Update to use user's logging
	preferences.

	* mail-accounts.c (filter_log_toggled): New.
	(filter_log_path_changed): New.
	(construct): Get and attach signals to the filter logging option
	widgets.

	* mail-config.c (config_read): Read in filter logging options.
	(mail_config_write_on_exit): Save filter logging options.
	(mail_config_set_filter_log_path): Implemented.
	(mail_config_get_filter_log_path): Implemented.
	(mail_config_set_filter_log): Implemented.
	(mail_config_get_filter_log): Implemented.

svn path=/trunk/; revision=11751
2001-08-07 23:19:20 +00:00
3d42df437a return the source url for popb4smtp auth request.
2001-08-03  Not Zed  <NotZed@Ximian.com>

        * mail-session.c (get_password): return the source url for
        popb4smtp auth request.

svn path=/trunk/; revision=11616
2001-08-03 15:35:35 +00:00
bf408fed06 We are not guarenteed to have a non-NULL service (ie. PGP) thus check for
2001-07-30  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-mt.c (do_get_pass): We are not guarenteed to have a
	non-NULL service (ie. PGP) thus check for it.
	(pass_got): And again here.
	(mail_get_password): And of course here too.

svn path=/trunk/; revision=11493
2001-07-30 22:16:49 +00:00
dcfc13c927 Actually add the timeout, this time in the gtk thread.
2001-07-30  Not Zed  <NotZed@Ximian.com>

        * mail-session.c (do_register_timeout): Actually add the timeout,
        this time in the gtk thread.
        (do_remove_timeout): And same for remove.
        (register_timeout):
        (remove_timeout): Proxy the gtk calls to the main thread, and
        wait for them to execute synchronously.
        (register_timeout): Instead of return with fail for a too small
        timeout, just increase the timeout.

svn path=/trunk/; revision=11468
2001-07-30 03:30:12 +00:00
45701621c5 Don't need this anymore. (do_get_pass): Since we already have the entry
2001-07-27  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-mt.c (focus_on_entry): Don't need this anymore.
	(do_get_pass): Since we already have the entry widget, no need to
	do the nasty focus_on_entry hack.

svn path=/trunk/; revision=11453
2001-07-27 19:02:42 +00:00
b0d5e599ce Don't make the key url:item if we have the url, just make it url. This
2001-07-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (make_key): Don't make the key url:item if we
	have the url, just make it url. This fixes bug #5339.
	(mail_session_set_password): Removed.

svn path=/trunk/; revision=11411
2001-07-25 20:04:12 +00:00
d15e1ef55f Don't make the key url:item if we have the url, just make it url. This
2001-07-25  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-session.c (make_key): Don't make the key url:item if we
	have the url, just make it url. This fixes bug #5339.

svn path=/trunk/; revision=11410
2001-07-25 19:46:33 +00:00
56d33b7e47 Now take a CamelService parameter (as passed by Camel). Allows us to have
2001-07-25  Peter Williams  <peterw@ximian.com>

	* mail-mt.c (mail_get_password): Now take a CamelService parameter
	(as passed by Camel). Allows us to have a "remember password"
	checkbox that is set correctly and whose settings can be
	propagated back to the proper MailConfigService.
	(do_get_pass): Add a checkbutton allowing the user to change
	whether the password is remembered or not.
	(pass_got): Apply the setting of the "remember password"
	checkbutton (if not cancelled.)

	* mail-mt.h: Update the prototype here.

	* mail-config.c (mail_config_service_set_save_passwd): New function,
	pretty bland.

	* mail-config.h: Prototype our bland new function. (Get it? It's a pun!)

	* mail-session.c (get_password): Pass the service as well.

svn path=/trunk/; revision=11408
2001-07-25 19:05:08 +00:00
5bd925e997 Implement this, based on code that used to be in mail-ops.c
* mail-session.c (get_filter_driver): Implement this, based on
	code that used to be in mail-ops.c

	* mail-ops.c (mail_load_filter_context, setup_filter_driver):
	Moved into MailSession::get_filter_driver.
	(filter_get_folder): Moved to mail-session.c
	(mail_filter_folder, mail_filter_on_demand, mail_fetch_mail,
	mail_send_mail, mail_send_queue): Remove FilterContext args, use
	camel_session_get_filter_driver.

	* mail-send-recv.c (mail_send_receive, mail_receive_uri):
	Remove FilterContexts

svn path=/trunk/; revision=10682
2001-07-02 15:04:27 +00:00
806c15f6ff Use MAILER_CFLAGS and MAILER_LIBS.
2001-05-22  Jeffrey Stedfast  <fejj@ximian.com>

	* Makefile.am: Use MAILER_CFLAGS and MAILER_LIBS.

svn path=/trunk/; revision=9934
2001-05-22 18:44:32 +00:00
b9401bbdf4 Split "Other" page into three pages, Display, Composer, and PGP. Add HTML
* mail-config.glade: Split "Other" page into three pages, Display,
	Composer, and PGP. Add HTML image stuff on the Display page and
	default forward style on the Composer page.

	* mail-config.c (mail_config_get_default_forward_style,
	mail_config_set_default_forward_style): User-specified default
	style for forwarding messages.
	(config_read, mail_config_write_on_exit): Deal with forward style.

	* mail-accounts.c: Handle HTML image display options and default
	forward style.

	* mail-callbacks.c (forward): New. Forward in the user-selected
	default style.
	(forward_inline, forward_quoted): Simplify these some. Remove the
	fallback to forward attached when forwarding multiple messages: it
	should just forward the multiple messages inline or quoted in
	those cases. (Which it doesn't yet, but that's a bug.)

	* folder-browser.c (context_menu): Remove "Forward inline" and
	make "Forward" call forward() rather than forward_attached().

	* folder-browser-factory.c: Update command/menu/toolbar/pixmap
	gunk for the "MessageForwardAttached" vs "MessageForward" split.

	* mail-session.c (mail_session_get_type):
	* mail-format.c (format_mime_part):
	* mail-account-gui.c (setup_service): Fix warnings.

svn path=/trunk/; revision=9792
2001-05-14 17:18:03 +00:00
d4b3c14fcd Renamed from session.c and made to be a subclass of CamelSession.
* mail-session.c: Renamed from session.c and made to be a subclass
	of CamelSession.

	* mail-mt.c (mail_user_message): Renamed from mail_get_accept and
	made more general-purpose, to implement the new
	camel_session_alert_user.

svn path=/trunk/; revision=9618
2001-04-27 21:08:51 +00:00