Commit Graph

111 Commits

Author SHA1 Message Date
cf18d0940f Simplify. Use transfer_messages_to instead of picking between copy and
* mail-ops.c (transfer_messages_transfer): Simplify. Use
	transfer_messages_to instead of picking between copy and move.
	Remove vtrash special-casing since it's all in
	camel-vtrash-folder.c now. Remove duplicate source == dest check.

	* mail-local.c (mail_local_folder_reconfigure): Use
	transfer_messages_to instead of copy_messages_to.

svn path=/trunk/; revision=16745
2002-05-10 16:46:04 +00:00
d89c3d0a9c Just use g_basename. (mlf_finalize): Free the real_path.
2002-04-17  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_folder_construct): Just use g_basename.
	(mlf_finalize): Free the real_path.

	* folder-browser.c (on_right_click): Unref the GdkGC so we don't
	leak it.

svn path=/trunk/; revision=16493
2002-04-17 20:00:39 +00:00
2ecd3ce0ee Changes to allow combined store/transport providers (like exchange and
* mail-account-gui.c: Changes to allow combined store/transport
	providers (like exchange and nntp). You can only select the
	transport if the account is also using that provider for the
	source.
	(source_type_changed): If changing away from a combined
	store/transport type, disable that provider on the transport page.
	If change to a combined store/transport type, enable and select
	that provider on the transport page.
	(mail_account_gui_setup): Do some additional bookkeeping here to
	make the above stuff work.
	(transport_type_changed): If the provider is a combined
	store/transport type, pretend it doesn't need any additional URL
	configuration.
	(mail_account_gui_transport_complete): if the transport provider
	is also a store provider, then as long as it matches the source
	for the account, it's considered complete.
	(mail_account_gui_save): If the selected transport is a combined
	store/transport provider, use the source page's information to
	fill in the transport url.

	* mail-local.c (mail_local_provider_init): Don't set up
	service_cache.

svn path=/trunk/; revision=16331
2002-04-03 18:19:27 +00:00
0
41dea671f8 Oops, dont use the url storage path to offset the folder name we're
2001-10-30    <NotZed@Ximian.com>

        * mail-local.c (mls_rename_folder): Oops, dont use the url storage
        path to offset the folder name we're renaming/opening, etc.

svn path=/trunk/; revision=14431
2001-10-30 05:23:43 +00:00
d6d55273d4 Require gal 0.15.99.8
2001-10-29  Joe Shaw  <joe@ximian.com>

	* configure.in: Require gal 0.15.99.8

	* addressbook/backend/ebook/e-card-simple.c,
	addressbook/gui/component/addressbook-storage.c,
	addressbook/gui/widgets/e-addressbook-view.c,
	calendar/gui/e-calendar-table.c,
	calendar/gui/e-itip-control.c,
	calendar/gui/e-meeting-model.c,
	calendar/gui/itip-utils.c,
	calendar/gui/print.c,
	calendar/gui/alarm-notify/alarm-notify-dialog.c,
	filter/rule-editor.c,
	mail/mail-config.c,
	mail/mail-folder-cache.c,
	mail/mail-format.c,
	mail/mail-local.c,
	mail/mail-ops.c,
	mail/mail-vfolder.c,
	shell/e-local-storage.c,
	shell/e-summary-storage.c: Change includes of
	e-util/e-unicode-i18n.h to gal/util/e-unicode-i18n.h

svn path=/trunk/; revision=14427
2001-10-30 05:02:49 +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
9
fedf164cb9 Copy the folder's full_name before trying to use it to rename.
2001-10-29    <NotZed@Ximian.com>

        * mail-vfolder.c (rule_changed): Copy the folder's full_name
        before trying to use it to rename.
        (vfolder_edit_rule): Set 'orig' to be a reference of the original
        rule.
        (edit_rule_clicked): Dont lookup orig by name, copy it over
        instead.

        * folder-browser.c (got_folder): oops, emit signal before
        unreffing object, incase we got killded during getting folder.
        (got_folder): Reset get_id.
        (folder_browser_new): Set get_id of the get_folder task.
        (folder_browser_init): Init get_id.
        (folder_browser_destroy): IF we have outstanding 'get folder' op,
        cancel it.

svn path=/trunk/; revision=14323
2001-10-29 05:06:28 +00:00
8
2331da257f add the folder name to the path when passing down to the subordinate
2001-10-28    <NotZed@Ximian.com>

        * mail-local.c (mlf_rename): add the folder name to the path when
        passing down to the subordinate folder.

svn path=/trunk/; revision=14295
2001-10-28 13:06:27 +00:00
8
4229e6849d Remove uic, kill dumb warning.
2001-10-28    <NotZed@Ximian.com>

	* folder-browser-ui.c (fbui_sensitize_timeout): Remove uic, kill
	dumb warning.

	* mail-autofilter.c (mail_filter_rename_uri): Implement function
	for filters to keep track of uri's being renamed.
	(mail_filter_delete_uri): Similarly for deleting uri's.  Note that
	these functions are just noops though.

	(real_flush_updates): Also rename and delete uri's from filters.

	(mls_delete_folder): Unref the store when done.
	(mls_rename_folder): Fix implementation, shell already created
	destination folder, so we can't just rename :(

	(xfer_folder): Manually call rename code, since the shell will do
	a remove/add later on, AND there's no way we can determine the new
	path from the crock of an api we have to work with.

svn path=/trunk/; revision=14291
2001-10-28 10:53:02 +00:00
8
4689dccf16 Implemented. (mail_vfolder_rename_uri): We do want to check renamed uri's
2001-10-28    <NotZed@Ximian.com>

        * mail-vfolder.c (mail_vfolder_rename_uri): Implemented.
        (mail_vfolder_rename_uri): We do want to check renamed uri's from
        vstores.
        (mail_vfolder_delete_uri): Same.
        (store_folder_renamed): Fix the folder hash at the same time.

        * mail-folder-cache.c (real_flush_updates): Pass the rename event
        to vfolder rename uri.

        * mail-local.c (mail_local_folder_reconfigure): Change the store
        path to be same as parent + mbox to be full path.
        (mls_delete_folder): Change store path to be parent path, and mbox
        to be full path.
        (mail_local_folder_reconfigure): Fix a leak of tmpname.

        * component-factory.c (xfer_folder): Only do a rename if we have
        remove set, cleaned up logic a bit.
        (idle_quit): Put the components still active check last last of
        all.
        (storage_create_folder): IF we have a fragment, use that as part
        part for parent.

svn path=/trunk/; revision=14276
2001-10-28 05:11:53 +00:00
6
8f8b24c737 Changed to open the source store from '/', so we can do renames across
2001-10-26    <NotZed@Ximian.com>

        * mail-local.c (mlf_set_folder): Changed to open the source store
        from '/', so we can do renames across directories.  Of course,
        this doesn't quite work with different filesystems, but we'll
        assume this isn't a problem we're going to have.
        (mail_local_folder_get_type): Setup parent_class.
        (mlf_rename): Implement folder rename call, rename internal data.

        Is this a security issue?  Well, not really, no more than anything
        else.

        * mail-folder-cache.c (mail_note_store): Listen to rename event.
        (store_folder_renamed): Function to handle it, empty.
        (mail_note_store_remove): Unhook from rename event.
        (mail_note_folder): Hook onto renamed event.
        (unset_folder_info): Unhook from renamed event.
        (folder_finalised): Lock around update.
        (folder_deleted): Lock around update.
        (real_flush_updates): If we have a path to remove remove it.
        (rename_folders): Scan folderinfo's, if we can find ones renamed,
        rename them, otherwise add them.

        * component-factory.c (owner_unset_cb): Use a timeout not an idle handler.
        (storage_xfer_folder): Implementation of xfer_folder signal
        handler, so we can rename imap/vfolders/etc.

svn path=/trunk/; revision=14205
2001-10-27 06:02:04 +00:00
c0cddd6d1d Update the licensing information to require version 2 of the GPL
(instead of version 2 or any later version).

svn path=/trunk/; revision=14191
2001-10-27 00:47:22 +00:00
1
f35bfdac73 Added a checkbox for body indexing.
2001-10-11    <NotZed@Ximian.com>

        * local-config.glade: Added a checkbox for body indexing.

        * mail-local.c (mail_local_reconfigure_folder): Get index_body
        widget.
        (mail_local_folder_reconfigure): Add an 'index_body' argument &
        implement.  Dont do anything if nothing changed.

        * openpgp-utils.c (openpgp_verify): Use e_iconv_open.

svn path=/trunk/; revision=13603
2001-10-11 22:09:43 +00:00
9
eacb6df293 Implement.
2001-10-09    <NotZed@Ximian.com>

        * mail-local.c (mlf_search_by_uids): Implement.

svn path=/trunk/; revision=13533
2001-10-09 22:27:07 +00:00
eb6606cf3f Update for folder_flags.
* mail-local.c (mlf_set_folder, mlf_unset_folder): Update for
	folder_flags.

	* folder-browser-ui.c (folder_browser_ui_add_list): Check
	CAMEL_FOLDER_IS_TRASH flag rather than checking
	CAMEL_IS_VTRASH_FOLDER.

	* folder-browser.c (folder_browser_toggle_hide_deleted): Likewise

	* message-list.c (message_list_set_folder): Likewise.
	(message_list_set_hidedeleted): Remove redundant trash check.

svn path=/trunk/; revision=13510
2001-10-09 03:08:29 +00:00
3
63fe218a16 Handle vtrash case, emit 'folder_created' event for the folder-cache to
2001-10-03    <NotZed@Ximian.com>

        * mail-local.c (local_storage_new_folder_cb): Handle vtrash case,
        emit 'folder_created' event for the folder-cache to work, etc.

svn path=/trunk/; revision=13387
2001-10-03 21:10:12 +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
8d3a2ebd28 create storages for providers that are STORAGE and aren't EXTERNAL, rather
* component-factory.c (mail_load_storage_by_uri): create storages
	for providers that are STORAGE and aren't EXTERNAL, rather than
	"(STORAGE and REMOTE) or spool, maildir, or vfolder".
	(mail_remove_storage_by_uri): Use the same rule here (which makes
	it possible now to remove maildir and spool stores now, which
	weren't properly special-cased before). Remove some CamelException
	misuse.

	* mail-config.c (new_source_created): Fix up the broken INBOX-
	shortcut-generating assumption a little by only assuming that if
	you call camel_store_get_inbox(), that its full_name is the same
	as its path. (This happens to always be true for inboxes now, and
	will be always true by definition at some point in the future.)
	Now maildir stores get working Inbox shortcuts.

	* mail-send-recv.c (get_receive_type): If PROVIDER_IS_STORAGE
	then use SEND_UPDATE, if not, use SEND_RECEIVE.

	* mail-local.c (local_provider): The local provider is EXTERNAL.
	(The shell creates it.)
	(mail_local_reconfigure_folder): Allow reconfiguring between
	IS_LOCAL providers.

	* mail-accounts.c (news_delete): Don't need to check the provider
	flags here... we know nntp is a STORAGE.

svn path=/trunk/; revision=13277
2001-10-01 19:45:39 +00:00
14d9f8c04e Don't use mail_tool_get_folder_name here since that function only existed
* mail-local.c (mail_local_reconfigure_folder): Don't use
	mail_tool_get_folder_name here since that function only existed to
	be clever in a certain case that this is not.
	(reconfigure_folder_free): Remove the dialog from the hash table
	here so that it gets removed in the successfully-reconfigured case
	too. Don't unref folder_out if it never got set.
	(reconfigure_clicked): Remove the hash table code from here; it's
	in reconfigure_folder_free now.

	* mail-tools.c (mail_tool_get_folder_name): No longer used by
	anything.
	(mail_tool_get_folder_from_urlname): Also not used anywhere.

svn path=/trunk/; revision=13273
2001-10-01 19:11:32 +00:00
8
4b14db5520 Emit folder_deleted event. (remove_find_path): Fix, compare against path,
2001-09-28    <NotZed@Ximian.com>

	* mail-local.c (mail_local_store_remove_folder): Emit
	folder_deleted event.
	(remove_find_path): Fix, compare against path, not full_name.

	* mail-tools.c (mail_tool_uri_to_folder): Dont
	vfolder_register_source anymore.

	* mail-vfolder.c (rule_changed): Changed to access
	mail_fodler_cahce to find out if the folder exist yet before
	trying to open them, also use the cache as a cache so we dont have
	to open the folder if its already been opened.
	(vfolder_register_source, register_source): Removed.
	(source_finalise): Removed,
	(check_source): Removed.  All handled through diff mechanism.
	(mail_vfolder_add_uri): New function, records uri's of available
	folders, and adds them to any active vfolders if required.
	(mail_vfolder_remove_uri): New function, removes a uri from
	available folders, and checks any rules to see fi they need
	updating.
	(vfolder_adduri): New async function to add a uri to all vfolders
	that need it.
	(store_folder_deleted): oops!  free user, not rule!!

	* mail-folder-cache.c: Add uri->folderinfo hashtable, and the
	store from which they come into the store info struct.
	Add uri to the folder_info.
	(setup_folder): Store the uri in the folderinfo.
	(setup_folder): And the uri in the folder_uri hashtable.
	(mail_note_store): Store the store in the storeinfo, and setup the
	folders_uri hashtable via the store's hash functions.
	(setup_folder): Call mail_vfolder_add_uri to note this newly setup
	folder uri.
	(store_folder_deleted): Proxy call to main thread.
	(real_folder_deleted): And tell the vfolder to remove this uri
	from its folder list.
	(setup_folder): Dont call vfolder_add_uri if noselect is set on
	the uri.

2001-09-27    <NotZed@Ximian.com>

	* mail-vfolder.c: Removed vfolder_info struct, vfolder_storage.
	Neither used anymore.

svn path=/trunk/; revision=13242
2001-09-28 23:54:30 +00:00
df8634ddc8 Setup the url_hash and url_equal functions for the local provider.
2001-09-28  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_provider_init): Setup the url_hash and
	url_equal functions for the local provider.

	* mail-account-gui.c (mail_account_gui_save): Add code here to
	check to make sure that the Drafts and Sent folders are pointing
	to valid urls. This is kinda nasty and only really solves the case
	where the user changes, say, his imap server or
	something. Unfortunately we still have the problem where if
	account A's sent/drafts folders point to account B's store and the
	user changes the url for account B.

	* mail-config.c (mail_config_get_account_by_source_url): Use Camel
	to compare the urls rather than using e_url_equal which does all
	sorts of funky shit that may not work in every case.

svn path=/trunk/; revision=13238
2001-09-28 22:38:53 +00:00
7
0ac20c6064 No such event finalized! Its finalize. (mail_note_store): "
2001-09-27    <NotZed@Ximian.com>

        * mail-folder-cache.c (real_note_folder): No such event finalized!
        Its finalize.
        (mail_note_store): "

        Fixed dan's comment a bit, info != NULL for folder_created, info==
        NULL for changed.

2001-09-26    <NotZed@Ximian.com>

        * mail-local.c (mlf_set_message_flags): Proxy the
        set_message_flags call too.  Doesn't fix the 'local folder counts
        dont update' problem, but its more correct.

svn path=/trunk/; revision=13200
2001-09-27 22:34:12 +00:00
4
9a864d05fe Removed unused variables.
2001-09-24    <NotZed@Ximian.com>

        * mail-local.c (mls_get_folder): Removed unused variables.

        * component-factory.c (storage_create_folder): Remove unused
        variable.

        * mail-format.c (write_default_header): Used to write a header
        that we know about/normally print.  Use a static header table to
        index these.
        (write_header): removed.
        (default_header_index): Return the index of the default header.
        (write_headers): Changed the way it writes headers a bit.  Use
        write_default_header or write_text_header directly.  Also try and
        use the header charset as a fallback if the header can't be
        decoded using the locale charset.

svn path=/trunk/; revision=13097
2001-09-24 19:31:36 +00:00
1
4d97946e70 Use url path as full_name, not shell path. (mail_local_folder_construct):
2001-09-21    <NotZed@Ximian.com>

        * mail-local.c (mail_local_store_add_folder): Use url path as
        full_name, not shell path.
        (mail_local_folder_construct): Remove path argument, and use the
        full_name instead.
        (mls_get_folder): Dont lookup folderinfo in cache.  Like duh the
        shell hasn't told me its there yet, smaaaart.

svn path=/trunk/; revision=13053
2001-09-21 19:45:21 +00:00
1
b2e7adf9b8 Take a new argument 'done' that can callback when complete. Fixed callers
2001-09-21    <NotZed@Ximian.com>

        * mail-folder-cache.c (mail_note_store): Take a new argument
        'done' that can callback when complete.  Fixed callers
        appropriately.

        * mail-ops.c (mail_update_subfolders): Removed.  Isn't used
        anymore.

        * mail-send-recv.c (receive_update_got_store): Remove call to
        mail_update_subfolders.

svn path=/trunk/; revision=13044
2001-09-21 05:58:31 +00:00
0
586f083c3a Lock around hashtable/list manipulation. Also dont try scan vfolder_hash
2001-09-20    <NotZed@Ximian.com>

	* mail-vfolder.c (vfolder_register_source): Lock around
	hashtable/list manipulation.  Also dont try scan vfolder_hash if
	it hasn't been setup yet.
	(source_finalise): Lock around list access.
	(rule_changed): Lock around hash access.
	(context_rule_added): Lock around hash access.
	(context_rule_removed): "
	(rule_changed): Lock around list access.

	* mail-local.c (storage_listener_startup): Fix for api change.
	(local_storage_new_folder_cb): Dont skip over leading / in path.
	(local_storage_removed_folder_cb): ditto.

	* mail-folder-cache.c (create_folders): No longer pass prefix
	between recursive calls - we have the path in the folderinfo.
	(setup_folder): No longer take path arg, we get it from
	folderinfo.
	(mail_note_folder): No longer take path arg, we use
	folder->full_name to key the folder table.
	(mail_note_store): Consolidate note_store interface, pass storage
	or corba_storage to it.
	(mail_note_local_store): Removed.

	* mail-ops.c
	(add_unmatched_info): Scan for unmatched name and re-title.

svn path=/trunk/; revision=13023
2001-09-20 22:59:11 +00:00
7863fdd24f Set the folder info path.
2001-09-20  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (mail_local_store_add_folder): Set the folder info
	path.

svn path=/trunk/; revision=13020
2001-09-20 21:37:15 +00:00
0
412c2967bb Register vfolder sources here.
2001-09-20    <NotZed@Ximian.com>

        * mail-tools.c(mail_tool_uri_to_folder): Register vfolder sources here.

        * folder-browser.c (got_folder): Dont register vfolder sources
        here.

        * mail-ops.c (mail_get_folder): Add thread parameter.  Fix callers.

        * mail-vfolder.c (vfolder_setup): Use the 'slow' queue for setting
        up vfolders.

        * mail-mt.c (mail_msg_init): Limit the maximum number of threads
        on the 'new' thread to 10.
        (mail_msg_init): Create a new queue 'slow' for doing slow
        operations.

svn path=/trunk/; revision=13017
2001-09-20 21:01:53 +00:00
0
55690284e1 Dont special case file: url's anymore.
2001-09-20    <NotZed@Ximian.com>

        * mail-tools.c (mail_tool_uri_to_folder): Dont special case file:
        url's anymore.

        * mail-local.c: Add real_path to MailLocalFolder.
        (mail_local_folder_construct): Added path argument, setup
        full_name == path, and real_path == full_name.
        (mls_get_folder): First lookup folderinfo to confirm this folder
        exists, then use that to properly construct the folder paths.
        (mail_local_folder_reconfigure): Use real_path not full_name to
        create the store uri.
        (mlf_set_folder): Use real_path not folder_name to get real uri
        path.

2001-09-19    <NotZed@Ximian.com>

        * mail-folder-cache.c (setup_store): Use the wrong spelling of
        finalised for the event hook.
        (real_note_folder): Use the wrong spelling of finalised for the
        event hook.
        (free_folder_info): Free the full_name parameter.
        (setup_folder):
        (real_note_folder): Key the folderinfo table on full_name, not
        path.

svn path=/trunk/; revision=13014
2001-09-20 19:34:58 +00:00
9
9ab4b45c15 Added missing header.
2001-09-19    <NotZed@Ximian.com>

        * component-factory.c: Added missing header.

        * mail-local.c (mail_local_store_add_folder): Async load the
        folder we just added, so it can update the folder counts in the
        display.  We just discard the folder afterwards?

        * mail-ops.c (mail_get_folder): Use the queued thread to get
        folders.

svn path=/trunk/; revision=12976
2001-09-19 10:01:32 +00:00
9
73c74dd70d General cleanup of mail debug printfs.
2001-09-19    <NotZed@Ximian.com>

        * General cleanup of mail debug printfs.

        * mail-folder-cache.[ch]: Completely rewritten.  Removed all calls
        to the old code everywhere they were used.  Nuff said.

        * folder-browser.h: Add shell_view to folder_browser & api to set
        it.

        * folder-browser-factory.c (control_activate): Set the shell-view
        on the folder_browser.
        (control_deactivate): And clear it here.

        * folder-browser.c (folder_browser_destroy): Unhook from changed
        events on the folder before giving it away.
        (got_folder): Hook onto the folder-changed events.
        (folder_changed): Event hook proxy for folder_changed events
        (main_folder_changed): And the main code version.
        (update_status_bar): And the one that actually does the work.
        (on_selection_changed): Also call update_status_bar() to update
        the selection count.
        (folder_browser_set_shell_view): Implement function to set the
        shell_view on the folder_browser.
        (folder_browser_destroy): Release the shell_view here too.

        * mail-tools.c (mail_tool_uri_to_folder): Dont 'note' the new
        folder if its from a file: url, this is handled by hte local store
        (yeeruughck).

        * mail-local.c (mls_init):
        (free_info):
        (mls_finalise): Setup init/finalise funcs for the folderinfo hash.
        (local_storage_removed_folder_cb): re-enable.

2001-09-18    <NotZed@Ximian.com>

        * mail-local.c (MailLocalStore): Add a hash table to store
        uri<>folderinfo data.
        (mail_local_store_add_folder): Add a new folderinfo to our hash.
        (mail_local_store_remove_folder): Remove a folder by uri.
        (storage_listener_startup): Add this store to those monitored by
        the folder tree.

svn path=/trunk/; revision=12974
2001-09-19 08:29:13 +00:00
7
7796aa195e Setup global corba_storage variable. (mls_get_folder): Set 'update
2001-09-17    <NotZed@Ximian.com>

        * mail-local.c (storage_listener_startup): Setup global
        corba_storage variable.
        (mls_get_folder): Set 'update lstorage' on the newly opened
        folder.

svn path=/trunk/; revision=12915
2001-09-17 22:21:16 +00:00
0
c7e1b2cbb0 Dynamically create the folder type list from camel. (reconfigure_clicked):
2001-09-10    <NotZed@Ximian.com>

        * mail-local.c (mail_local_reconfigure_folder): Dynamically create
        the folder type list from camel.
        (reconfigure_clicked): And change code to handle changes.

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

        * merged mail_local patch from peterw.  Many changes.

svn path=/trunk/; revision=12759
2001-09-11 00:32:20 +00:00
d671e29102 Studlycapsize all the IDs that are not. Likewise. Updated accordingly.
* Evolution-ShellComponent.idl: Studlycapsize all the IDs that are
not.
* Evolution-common.idl: Likewise.
* evolution-activity-client.c: Updated accordingly.
* evolution-shell-component.c: Likewise.
* evolution-storage.c: Likewise.
* e-activity-handler.c: Likewise.
* e-component-registry.c: Likewise.
* e-corba-storage.c: Likewise.
* e-shell-user-creatable-items-handlers.c: Likewise.

* e-local-storage.c (remove_folder): Remove unused variable.

* e-shell-view.c (update_for_current_uri): Assign zero to
`unread_count', not NULL.

* e-shell-importer.c (import_druid_finish): Remove unused
variable.

* e-shell-user-creatable-items-handler.c: #include
"e-corba-utils.h".

* e-shell-startup-wizard.c: #include "e-shell-startup-wizard.h".

* e-shell-startup-wizard.h: #include <glib.h>

* e-summary-weather.c (weather_make_html): Make local variable
`icon_name' const.  Remove unused variable `uri'.

* e-summary.h: Reformatted in GTK+ style.
(e_summary_remove_online_connection): Added prototype.

* e-summary-preferences.c (fill_mail_shown_clist): Constify local
variable `name'.

* e-summary-mail.c: #include "e-util/e-path.h".  Updated to match
the new studlyCapsification in shell/Evolution*.idl.

* mail-local.c: Match the studlyCapsification of
shell/Evolution*.idl.

* mail-config-druid.h: Change type of `event_source' from
`Bonobo_EventSource *' to `Bonobo_EventSource'.

* mail-accounts.c (mail_delete): Remove unused local variable
`label'.

* folder-info.c (do_get_info): `#if 0' unused variables.

* gui/component/addressbook-component.c: Get rid of a warning by
initializing the closing NULL element in folder_types correctly.

* gui/component/select-names/e-select-names.c: Updated to match
the studlyCapsification of attributes in shell/Evolution*.idl.

svn path=/trunk/; revision=12495
2001-08-28 00:18:34 +00:00
8cb5eafe19 Don't blindly make all vtrash folder types have a uri of vtrash:file:/,
2001-08-22  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (create_view): Don't blindly make all vtrash
	folder types have a uri of vtrash:file:/, instead only make it use
	vtrash:file:/ if it's a file: uri, else use physical_uri.

svn path=/trunk/; revision=12411
2001-08-22 23:30:27 +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
a1a0a6bc4c Modify the url and set the protocol to mbox rather than hacking it and
2001-08-20  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (create_folder): Modify the url and set the
	protocol to mbox rather than hacking it and prepending mbox: to
	the uri.

	* mail-local.c (get_folder): Don't prepend the folder_name with
	the store's path because the hash key is folder_name, not
	/folder_name.

svn path=/trunk/; revision=12325
2001-08-20 21:49:09 +00:00
ac4f13b93e Allow the activity to be NULL if there isn't a global_shell_client so that
2001-08-19  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-mt.c (do_op_status): Allow the activity to be NULL if there
	isn't a global_shell_client so that we don't try and report status
	updates when the shell is destroyed.

	* mail-config.c (add_shortcut_entry): Return if there isn't a
	global_shell_client.

	* component-factory.c (owner_set_cb): set the global_shell_client
	here and connect to the destroy signal.

	* mail-vfolder.c (vfolder_create_storage): Use an extern global_shell_client.

svn path=/trunk/; revision=12242
2001-08-20 04:02:10 +00:00
21a13fbcb6 gets rid of those annoying operation-re-registered messages at last.
2001-08-15  Not Zed  <NotZed@Ximian.com>

        * mail-local.c (register_folder_register): Remove operation
        registration/etc.  Handled by mail-mt.c

        * message-list.c (regen_list_regen): Remove camel operation
        registration/etc.

svn path=/trunk/; revision=12041
2001-08-15 04:46:35 +00:00
df8180e04a Fix this so it can actually get folders from the hash of folders on the
2001-08-13  Jason Leach  <jleach@ximian.com>

	* mail-local.c (get_folder): Fix this so it can actually get
	folders from the hash of folders on the local store (it was
	looking up plain @folder_name, which is typically "mbox", instead
	of the full URI, /home/jleach/evolution/local/Foo/mbox).

	* component-factory.c (do_remove_folder): Rename to
	remove_folder_done, more fitting for it's purpose.
	(do_xfer_folder): Similar name change.
	(do_create_folder): Similar name change.
	(remove_folder): Don't notifyResult for the component here, we
	will notify with our result in remove_folder_done.
	(xfer_folder): Ditto.

	* mail-vfolder.c (vfolder_refresh): Create new folders with unread
	counts of "0" instead of #FALSE (which just happens to be #defined
	as zero).

svn path=/trunk/; revision=11964
2001-08-13 21:36:41 +00:00
eaef85763e Tell folder cache the path for our Trash is /Trash, because that's what
001-08-13  Jason Leach  <jleach@ximian.com>

	* mail-local.c (init_trash): Tell folder cache the path for our
	Trash is /Trash, because that's what Shell needs to hear for
	updating folders.

svn path=/trunk/; revision=11940
2001-08-13 14:45:27 +00:00
7aeeb5f282 Added key accelerators to a bunch of the config options and moved the Bcc
2001-08-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config.glade: Added key accelerators to a bunch of the
	config options and moved the Bcc and empty-subject checkboxes to
	the composer tab where they belong.

	* mail-callbacks.c (providers_config): Raise the dialog if it
	exists already.
	(manage_subscriptions): Raise the dialog if it already exists.
	(main_select_first_unread): Removed (we haven't needed this code
	in ages).
	(select_first_unread): Same.
	(save_msg_ok): If the path is empty, just return.

	* mail-local.c (mail_local_reconfigure_folder): Raise the dialog
	if it already exists.

svn path=/trunk/; revision=11719
2001-08-07 01:11:48 +00:00
3732e11baf Updates for EvolutionStorage API changes.
2001-08-03  Jason Leach  <jleach@ximian.com>

	* mail-folder-cache.c (update_idle): Updates for EvolutionStorage
	API changes.

	* mail-importer.c (mail_importer_create_folder): Ditto.

	* mail-local.c: Same here.

svn path=/trunk/; revision=11636
2001-08-03 23:12:14 +00:00
49bad5e10f Do a case-insensitive comparison. (mail_generate_reply): Only resort to
2001-07-24  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (guess_me): Do a case-insensitive comparison.
	(mail_generate_reply): Only resort to the source account's
	identity if we can't find out which identity to use based on the
	recipients of the message first.

	* mail-config.c (mail_config_get_default_account): Make sure to
	return the 0th account if we don't have a default. We don't want
	to return NULL.

	* mail-callbacks.c (empty_trash): Use mail_tool_get_trash for the
	remote store trash folders.

	* mail-tools.c (mail_tool_get_trash): New convenience function.

svn path=/trunk/; revision=11353
2001-07-24 20:12:47 +00:00
020d3367a8 Set up the local trash in the folder cache.
2001-07-24  Peter Williams  <peterw@ximian.com>

	* mail-local.c (init_trash): Set up the local trash in the folder cache.

svn path=/trunk/; revision=11343
2001-07-24 16:31:54 +00:00
fcce65ec8a Fix DanW's fix. Pass the right arguments to mail_msg_destroy.
2001-07-20  Peter Williams  <peterw@ximian.com>

	* mail-mt.c (mail_msgport_replied): Fix DanW's fix. Pass the right
	arguments to mail_msg_destroy.

	* component-factory.c (component_fn): Don't populate the context
	menu; our only action didn't even work.
	(populate_folder_context_menu): Removed. ChangeFolderProperties
	needs a FolderBrowser which we don't have. It didn't even work
	before.

	* mail-local.c (mail_local_reconfigure_folder): Bring the creation
	of the hash table to the beginning to prevent warnings. Complain
	if the mailbox is non-local.

svn path=/trunk/; revision=11266
2001-07-20 19:15:04 +00:00
37695c74b7 remvoed register/start/end etc code.
2001-07-19  Not Zed  <NotZed@Ximian.com>

        * mail-local.c (reconfigure_folder_reconfigure): remvoed
        register/start/end etc code.

        * mail-ops.c (get_messages_desc): Add the count here.
        (get_messages_get): Remove the register/start code, its handled
        above us.
        (save_messages_desc): Added count.
        (save_messages_save): Removed register/start/end code.

        * mail-mt.c (mail_msg_received, mail_msg_destroy): Changed to use
        camel_operation rather than mail_status.
        (mail_msgport_received, mail_msgport_replied): Turn of the
        mail_status stuff, we dont need to report on stuff running in the
        gui thread right?
        (retrieve_shell_view_interface_from_control, set_view_data,
        mail_statusf,  mail_status, mail_status_end, mail_status_start,
        status_timeout, do_del_status, set_status_op): removed now
        redundant stuff.
        (mail_msg_free): Removed reference to timeout_id.

svn path=/trunk/; revision=11225
2001-07-19 13:31:22 +00:00
cdea22d886 partial checkin before completing the changes
2001-07-18  Not Zed  <NotZed@Ximian.com>

        * mail-local.c (reconfigure_folder_reconfigure): Changed to use
        camel_operation rathre than mail_status.
        (reconfigure_folder_describe): re-enabled this function.

        * mail-ops.c (get_messages_get): Changed to use camel-progress for
        status reporting.
        (save_messages_save): Likewise.

2001-07-17  Not Zed  <NotZed@Ximian.com>

        * mail-mt.c (struct _mail_msg_priv, destroy_objects, mail_msg_new,
        mail_msg_free, do_op_status): Changed to use an EvolutionActivityClient for
        progress.

svn path=/trunk/; revision=11223
2001-07-19 11:50:49 +00:00
40934b5c2a Use CAMEL_VTRASH_NAME.
2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-local.c (init_trash): Use CAMEL_VTRASH_NAME.

	* mail-ops.c (add_vtrash_info): Use CAMEL_VTRASH_NAME.

	* folder-browser.c: turned off some debugging

2001-07-16  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (transfer_msg): Disallow vtrash for now...

svn path=/trunk/; revision=11159
2001-07-17 16:42:35 +00:00
6bebd14b92 Use g_strcasecmp() when looking for a Trash folder - it may be lowercase
2001-07-16  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-ops.c (add_vtrash_info): Use g_strcasecmp() when looking
	for a Trash folder - it may be lowercase or something funky.

	* mail-local.c (init_trash): No need to specify the vfolder
	expression here. This code was moved into camel-vtrash-folder.c
	ages ago.

	* component-factory.c: Let VTrash folders accept/export the same
	dnd types as normal folders.

svn path=/trunk/; revision=11140
2001-07-16 22:04:14 +00:00