Commit Graph

229 Commits

Author SHA1 Message Date
7abc9f6ba2 folder-browser.c: (folder_browser_set_message_preview): Return do nothing
folder-browser.c:
	(folder_browser_set_message_preview): Return do nothing if we're
	destroyed (message_list == NULL).
	(folder_browser_search_query_changed): "
	(folder_browser_toggle_preview): "
	(folder_browser_toggle_threads): "
	(folder_browser_toggle_hide_deleted): "
	(folder_browser_set_message_display_style): "
	(folder_browser_charset_changed): "   All for #12613.

svn path=/trunk/; revision=13703
2001-10-16 20:51:32 +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
6
41802db263 New function to return the id of the currently executing proxied event.
2001-10-16    <NotZed@Ximian.com>

	* mail-mt.c (mail_proxy_event_id): New function to return the id
	of the currently executing proxied event.

	* folder-browser.h: Added private field.

	* folder-browser.c (folder_changed): Keep track of tasks
	outstanding in the tasks list, locked access.
	(FOLDER_BROWSER_LOCK, UNLOCK): Macros to lock the folder browser
	for poking about in diff threads.
	(folder_browser_finalise): Wait for any outstanding takss to
	finish before cleaning ourself up.
	(folder_browser_destroy): Move the seen_id handling to finalise,
	also add a loading_id handling code.
	(main_folder_changed): Remove our running task when done.

svn path=/trunk/; revision=13695
2001-10-16 17:34:59 +00:00
4bcda57628 Remove the mark_seen timeout.
2001-10-15  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (folder_browser_destroy): Remove the mark_seen
	timeout.

svn path=/trunk/; revision=13689
2001-10-15 23:12:29 +00:00
f989a757a1 Make sure the mail-display is non-NULL.
2001-10-09  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (done_message_selected): Make sure the
	mail-display is non-NULL.

svn path=/trunk/; revision=13535
2001-10-09 23:21:11 +00:00
cd28010b32 Create a chaqrset picker submenu in the View menu.
2001-10-09  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser-ui.c (folder_browser_ui_add_message): Create a
	chaqrset picker submenu in the View menu.

	* mail-format.c (mail_format_raw_message): Pass the mail-display
	to get_data_wrapper_text.
	(get_data_wrapper_text): Use the user's override charset if one is
	provided, otherwise user the user's default charset.
	(handle_text_plain): Pass along the mail-display to
	get_data_wrapper_text.
	(handle_application_pgp): Same.
	(handle_text_enriched): Here too.
	(mail_get_message_body): Pass NULL as the mail-display to
	get_data_wrapper_text since we don't have access to a
	mail-display.

	* mail-display.c (mail_display_set_charset): New function to set a
	charset on the maildisplay. Once set, the message is redisplayed
	using the new charset.
	(mail_display_destroy): Free the charset.

	* folder-browser.c (folder_browser_charset_changed): New callback
	for when a user overrides the message charset.

svn path=/trunk/; revision=13530
2001-10-09 22:01:49 +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
5
e2aaec85d0 reformatted the menu tables so they're a bit more bloody readable.
2001-10-05    <NotZed@Ximian.com>

        * folder-browser.c: reformatted the menu tables so they're a bit
        more bloody readable.

        * mail-folder-cache.c (mail_note_store): Hook into
        subscribed/unsubscribed events.  Only 'add/remove' folders from
        the add/removed events if we aren't subscribed, otherwise use the
        subscribed events.  Rest of fix for #11831

svn path=/trunk/; revision=13472
2001-10-05 21:50:12 +00:00
4
b4d1e6b70e Show "nn sent" as total in sent folder, rather than just 'total'.
2001-10-04    <NotZed@Ximian.com>

        * folder-browser.c (update_status_bar): Show "nn sent" as total in
        sent folder, rather than just 'total'.

        * mail-folder-cache.c (update_1folder): Also show total message
        count for sent_folder.

svn path=/trunk/; revision=13429
2001-10-05 00:21:28 +00:00
3
f4742f2892 Set 'to' -> 'recipient' data for search object. #6199.
2001-10-03    <NotZed@Ximian.com>

        * folder-browser.c (folder_browser_config_search): Set 'to' ->
        'recipient' data for search object.  #6199.

svn path=/trunk/; revision=13399
2001-10-04 00:26:53 +00:00
3
636b05ecb8 If we have hide deleted set, then dont count deleted messages in the
2001-10-03    <NotZed@Ximian.com>

        * folder-browser.c (update_status_bar): If we have hide deleted
        set, then dont count deleted messages in the 'total' messages
        count.  Fixes #6591.

svn path=/trunk/; revision=13381
2001-10-03 18:18:02 +00:00
378422f6e1 Pass an empty flags argument to mail_transfer_messages - destination
2001-10-02  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (transfer_msg): Pass an empty flags argument to
	mail_transfer_messages - destination folder should already be
	created by this point.

	* folder-browser.c (message_list_drag_data_received): Pass an
	empty flags argument to mail_transfer_messages.
	(selection_received): Same.

	* component-factory.c (xfer_folder): Pass the CREATE flag to
	mail_transfer_messages() so that the dest folder gets created.
	(destination_folder_handle_drop): Update for mail-ops API change.

	* mail-ops.c (mail_transfer_messages): Now takes a dest_flags
	argument that it passes along to mail_tool_uri_to_folder when
	opening the destination folder.

svn path=/trunk/; revision=13357
2001-10-02 22:45:24 +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
3032dfd5ca removed mail-vtrash.c
svn path=/trunk/; revision=13221
2001-09-28 19:14:10 +00:00
5
ba5b1b6be7 Deal with destroy vs finalise semantics. Only destroy widgets here.
2001-09-25    <NotZed@Ximian.com>

        * folder-browser.c (folder_browser_destroy): Deal with destroy vs
        finalise semantics.  Only destroy widgets here.
        (folder_browser_finalise): object finalise function, actually
        unref/free all other objects here.
        (folder_browser_class_init): Init the finalise hook.
        (got_folder): Check if message_list == NULL -> we've been
        destroyed before the thread got a chance to finish loading the
        folder.
        (folder_browser_is_drafts): Dont use a g_return_if_fail to return
        in what could be a valid state of the object.
        (folder_browser_is_sent): Likewise.
        (folder_browser_copy): Do nothing if message_list == NULL.

        * main.c (main): call  mail_msg_cleanup() before leaving threads.

        * component-factory.c (owner_unset_cb): Wait for all outstanding
        operations to finish before setting up to quit.
        (idle_quit): Wait for all outstanding ops to finish before
        cleanup.
        (unref_standard_folders): NULL out the standard folder before
        unreffing it.

        * mail-mt.c (mail_msg_wait_all): New function to wait for all
        outstanding thread operations.
        (mail_msg_cleanup): Destroy the io channels before we're
        finished.  Also wait for all outstanding threads first.  Made
        public.
        (mail_msg_init): Dont call mail_msg_cleanup atexit automatically.

svn path=/trunk/; revision=13129
2001-09-25 22:18:52 +00:00
0
a68b568135 Update the status bar here, assuming we've just been activated.
2001-09-20    <NotZed@Ximian.com>

	* folder-browser.c (folder_browser_set_shell_view): Update the
	status bar here, assuming we've just been activated.

	* mail-ops.c (add_vtrash_info): Scan whole list, rather than
	missing the last one.  Also dont assume its always the last,
	otherwise we could lose following folders.

	* mail-vfolder.c
	(all): d(x) out debug printfs

	* mail-folder-cache.c
	(update_1folder): If its a vtrash folder, or the outbox_folder,
	and we have a folder, then make the 'count' the total message
	count, not unread messages count.

svn path=/trunk/; revision=13036
2001-09-21 00:56:49 +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
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
e73fea5ecf Merged into folder_browser_new: nothing ever changes the URI of an
* folder-browser.c (folder_browser_set_uri): Merged into
	folder_browser_new: nothing ever changes the URI of an existing
	folder browser any more.
	(folder_browser_new): Make this take a uri argument and do the
	work folder_browser_set_uri used to do, except that we set fb->uri
	right away, so that if the folder browser's control is activated
	before got_folder() gets called, then folder_browser_ui_add_list()
	will have access to the correct uri for purposes of setting
	ViewThreaded, etc. Fixes #4913.
	(got_folder): Don't set fb->uri here since it will already have
	been set. Don't call message_list_set_threaded, since it should be
	a noop now (and if it's not, it would make the message list not
	match the menu item).

	* folder-browser-ui.c (folder_browser_ui_add_list): Remove some
	code that was failing to work around the problems above.

	* message-browser.c (message_browser_new): Pass uri to
	folder_browser_new, remove call to set_uri.

	* folder-browser-factory.c (folder_browser_factory_new_control):
	Likewise. Also fix a s/destroy/unref/ in an error cleanup.

svn path=/trunk/; revision=12954
2001-09-18 21:12:37 +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
e00591f008 Use the new e_mkdtemp function.
2001-08-24  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-display.c (launch_cb): Use the new e_mkdtemp function.

	* folder-browser.c (message_list_drag_data_get): Use the new
	e_mkdtemp function.

svn path=/trunk/; revision=12462
2001-08-24 22:41:24 +00:00
90823e758b Check to make sure we actually have drag data.
2001-08-23  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (destination_folder_handle_drop): Check to
	make sure we actually have drag data.

	* folder-browser.c (message_list_drag_data_received): Check to
	make sure we have valid data.

svn path=/trunk/; revision=12424
2001-08-23 21:34:32 +00:00
ee5591ab84 Rename to fbui_real_sensitize_items. Now we queue a change and set up a
2001-08-21  Peter Williams  <peterw@ximian.com>

	* folder-browser-ui.c (fbui_sensitize_items): Rename to
	fbui_real_sensitize_items. Now we queue a change and set up a timeout,
	making sure weed out redundant changes, fixing flicker.
	(fbui_sensitize_timeout): New function. The timeout.
	(fbui_real_sensitize_items): Semi-new function. Rename of old
	fbui_sensitize_items.
	(folder_browser_ui_set_selection_state): Pass the FB instead of only
	the UIC to sensitize_items.
	(folder_browser_ui_message_loaded): Same.

	* folder-browser.c (folder_browser_destroy): Kill the new timeout if
	it is registered.

	* folder-browser.h: Add some members to FolderBrowser for keeping
	track of the queue of changes.

svn path=/trunk/; revision=12343
2001-08-21 16:00:41 +00:00
866a960fd9 Fix bug #215... desensitize menu items based on the number of selected
2001-08-09  Peter Williams  <peterw@ximian.com>

	Fix bug #215... desensitize menu items based on the number of
	selected messages (and whether there's a message in the pane)

	* folder-browser-ui.c (folder_browser_ui_add_message): Sensitize
	the menu items appropriately based on the old state.
	(fbui_sensitize_items): New function. Set the sensitivity of a
	list of commands.
	(folder_browser_ui_set_selection_state): New function. Move the FB
	to a new state of selected-ness, and sensitize menu items
	appropriately.
	(folder_browser_ui_message_loaded): New function. When notified
	that a message has been loaded, sensitize some menu items.

	* folder-browser-ui.h: Prototype new functions.

	* folder-browser.h: New enumeration,
	FolderBrowserSelectionState, that records the previous state
	of the selection (_NONE, _SINGLE, _MULTIPLE).

	* folder-browser.c (got_folder): If the component is set,
	set our selection state to _NONE, because that's the default
	state of the ETree.
	(on_selection_changed): When the number of selected messages
	is updated, notify the FBUI code of our new state.
	(folder_browser_gui_init): Hook up to the selection_changed
	signal and default to the _NONE selection state.
	(done_message_selected): Notify when a message is loaded.

2001-08-08  Peter Williams  <peterw@ximian.com>

	* mail-folder-cache.c: Display how many messages are selected,
	too.
	(make_folder_status): If multiple messages are selected, add that
	to the string (the 0 and 1 cases are boring)
	(selection_changed): New function, update the selected count.
	(mail_folder_cache_note_fb): Connect to the selection_changed
	signal.

svn path=/trunk/; revision=12012
2001-08-14 15:26:00 +00:00
28d41bb474 Fix the fix for #6722.
* folder-browser.c (message_list_drag_data_get): Fix the fix for
	#6722.

	* mail-ops.c (save_messages_save): Likewise.
	(save_part_save): Deal with the possibility that
	camel_mime_filter_charset_new_convert will return NULL (bad
	charset name). Fixes #6611.

svn path=/trunk/; revision=12008
2001-08-14 14:14:55 +00:00
5f6e3bde3b Make the right click "Resend..." into "Edit as New Message...", bug #6838.
2001-08-11  Jason Leach  <jleach@ximian.com>

	* folder-browser.c: Make the right click "Resend..." into "Edit as
	New Message...", bug #6838.

svn path=/trunk/; revision=11927
2001-08-12 00:45:18 +00:00
78544223ad Removed comment about the need to resolve nicknames properly, because we
2001-08-10  Jon Trowbridge  <trow@ximian.com>

	* e-msg-composer-hdrs.c (set_recipients): Removed comment about
	the need to resolve nicknames properly, because we now do that.

2001-08-10  Jon Trowbridge  <trow@ximian.com>

        * e-filter-bar.h: Set the subitems to NULL in the pre-defined
        ESearchBarItems.

        * e-filter-bar.c (rule_editor_clicked): Set the ESearchBarItem's
        subitems to NULL.
        (build_items): Set the ESearchBarItem's subitems to NULL.
        (e_filter_bar_new): Set the ESearchBarItem's subitems to NULL.

        * e-search-bar.c: Added support for subitems, so that a search
        option can key off of another option menu rather than just an
        entry.

2001-08-10  Jon Trowbridge  <trow@ximian.com>

        * gui/component/addressbook.c: Set the ESearchBarItem
        subitems explicitly to NULL.

2001-08-10  Jon Trowbridge  <trow@ximian.com>

        * gui/cal-search-bar.c: Where we have ESearchBarItems, set their
        subitems to NULL.

2001-08-10  Jon Trowbridge  <trow@ximian.com>

        * folder-browser.c: Set our ESearchBarItems subitems to NULL.

svn path=/trunk/; revision=11904
2001-08-10 22:36:41 +00:00
1a6ecd207d Make the context menu for the Sent folder have "Resend..." instead of
2001-08-10  Jason Leach  <jleach@ximian.com>

	* folder-browser.c: Make the context menu for the Sent folder have
	"Resend..." instead of "Resend", to clarify that it will bring up
	a dialog needing your input rather than just blindly sending the
	message again.  Also give it the 'e' accelerator.  Bug #6838.

svn path=/trunk/; revision=11901
2001-08-10 22:06:48 +00:00
5cfa31ba11 Added a comment about leaking memory here, but we seem to not even use the
2001-08-10  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (on_right_click): Added a comment about leaking
	memory here, but we seem to not even use the 2 strings we
	strdup...is this code still under construction?

	* mail-ops.c (mail_send_message): Free the sent_folder_uri at the
	bottom of the function (ironically enough we were freeing it if we
	encountered an error but never free'd it on success :-)
	(get_folderinfo_got): Fixed a memory leak...this one would have
	gone away once we got rid of the debug g_warning though.

svn path=/trunk/; revision=11868
2001-08-10 04:23:32 +00:00
09eba6fad0 in mail:
2001-08-09  Peter Williams  <peterw@ximian.com>

	[ * folder-browser.c (on_key_press): The bonobo menu items now
	handle 'n' and 'p'. ]
	(on_key_press): 'q' as well.

in ui:

2001-08-09  Peter Williams  <peterw@ximian.com>

	* evolution-mail-global.xml: Give the (pre)view pane toggle
	an accelerator of 'q', like we were implementing the hard
	manual way before.

svn path=/trunk/; revision=11858
2001-08-10 00:16:16 +00:00
3e4aed06db The bonobo menu items now handle 'n' and 'p'.
2001-08-09  Peter Williams  <peterw@ximian.com>

	* folder-browser.c (on_key_press): The bonobo menu items now
	handle 'n' and 'p'.

svn path=/trunk/; revision=11853
2001-08-09 23:51:23 +00:00
3c88c8b755 Fixes bug #6918
2001-08-09  Anna Marie Dirks <anna@ximian.com>

	Fixes bug #6918

	* folder-browser.c: Changed the "Store search as vFolder"
	menu item to "Create vFolder from Search".

svn path=/trunk/; revision=11848
2001-08-09 23:37:29 +00:00
97e76a8703 Fixes bug #6722
2001-08-09  Jeffrey Stedfast  <fejj@ximian.com>

	Fixes bug #6722

	* mail-ops.c (save_messages_save): Don't set the default perms
	here, let the user's umask deal with permissions.

	* folder-browser.c (message_list_drag_data_get): Don't set any
	default perms.

svn path=/trunk/; revision=11842
2001-08-09 20:33:41 +00:00
739376df3b Set the message-display message to NULL if we can't get an info too.
2001-08-06  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (expunge_folder): Set the message-display
	message to NULL if we can't get an info too.

svn path=/trunk/; revision=11711
2001-08-06 21:47:58 +00:00
ed0295fd12 Add a @wraparound argument, so the 'n' and 'p' keypresses (or anything
2001-08-04  Jason Leach  <jleach@ximian.com>

	* message-list.c (message_list_select): Add a @wraparound
	argument, so the 'n' and 'p' keypresses (or anything else that
	wants to) can wrap around to find the next unread.

	* folder-browser.c (on_key_press): Tell it to wrap around here.

	* mail-callbacks.c (delete_msg): Don't wrap around here (or the
	other callbacks in this file).

svn path=/trunk/; revision=11651
2001-08-04 18:33:50 +00:00
5e1e2e9850 I obviously can't spell recieved, er, received...uh, yea.
2001-08-02  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (message_list_drag_data_received): I obviously
	can't spell recieved, er, received...uh, yea.

svn path=/trunk/; revision=11595
2001-08-02 19:38:52 +00:00
221856a80b Do the Right Thing (tm) if the message list is not the widget in focus
2001-08-01  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (folder_browser_copy): Do the Right Thing (tm)
	if the message list is not the widget in focus (which is to copy
	the text selected in the html viewer instead). Fixes bug #5868.

svn path=/trunk/; revision=11558
2001-08-01 19:02:10 +00:00
eede44087f If we don't have any messages selected, break out. This fixes bug #5612.
2001-07-26  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (message_list_drag_data_get): If we don't have
	any messages selected, break out. This fixes bug #5612.

	* component-factory.c (xfer_folder): Fixed a strstr (url,
	"noselect=yes") brokenness.
	(destination_folder_handle_motion): Same.
	(destination_folder_handle_drop): And again here.

	* mail-format.c (handle_application_pgp): Implemented.
	(setup_mime_tables): Setup the application/pgp handler to use
	handle_application_pgp instead of handle_text_plain.
	(handle_text_plain): Remove special-case hacks for application/pgp
	types.

svn path=/trunk/; revision=11438
2001-07-26 22:31:54 +00:00
e49022b776 Make 'q' a toggle, not one-way.
2001-07-26  Peter Williams  <peterw@ximian.com>

	* folder-browser.c (on_key_press): Make 'q' a toggle, not
	one-way.

svn path=/trunk/; revision=11425
2001-07-26 14:53:00 +00:00
f0e17938dc Make it so Enter always opens the message in another window.
2001-07-25  Peter Williams  <peterw@ximian.com>

	* folder-browser.c (etree_key): Make it so Enter always opens the message
	in another window.

svn path=/trunk/; revision=11409
2001-07-25 19:40:32 +00:00
b4f3f0c102 [Bug #5225: No UI way to mark as unimportant]
2001-07-23  Jason Leach  <jleach@ximian.com>

	[Bug #5225: No UI way to mark as unimportant]

	* folder-browser.c (on_right_click): Do the necessary stuff to
	show or hide the correct "Mark Important" or "Mark as Unimportant"
	menu items depending on the status of messages that are selected.

	* folder-browser-ui.c: Add the MarkAsUnimportant verb here.

	* mail-callbacks.c (mark_as_unimportant): Simple function that's
	the callback for these new menu items.

svn path=/trunk/; revision=11316
2001-07-23 19:14:53 +00:00
400b130060 Set the vertical scrolling policy for the mail display to AUTOMATIC, only
2001-07-19  Jason Leach  <jleach@ximian.com>

	* mail-display.c (mail_display_new): Set the vertical scrolling
	policy for the mail display to AUTOMATIC, only get a scrollbar if
	the e-mail is longer than one frame.

	* folder-browser.c (my_folder_browser_init): We were setting the
	policy twice (and to two different things).  Removed this one.

	* message-list.c (message_list_init): Set the policy for the
	message list scroll frame to be horizontal=NEVER,
	vertical=AUTOMATIC (scrollbar only if you have >1 page of
	messages).

svn path=/trunk/; revision=11239
2001-07-19 21:45:06 +00:00
6142029e7e Do what was suggested in #4596.
2001-07-18  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-tools.c (mail_tool_generate_forward_subject): Do what was
	suggested in #4596.

svn path=/trunk/; revision=11210
2001-07-18 20:46:35 +00:00
bbfb9268af Fix to correctly handle text/uri-lists that contain more than a single
2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (message_list_drag_data_recieved): Fix to
	correctly handle text/uri-lists that contain more than a single
	url.

	* component-factory.c (destination_folder_handle_drop): Fix to
	correctly handle text/uri-lists that contain more than a single
	url.

svn path=/trunk/; revision=11174
2001-07-17 20:45:57 +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
53996fb559 Use our own display_style member instead of the global setting.
2001-07-16  Peter Williams  <peterw@ximian.com>

	* mail-display.c (mail_display_redisplay): Use our own display_style
	member instead of the global setting.
	(mail_display_init): Initialize display_style.

	* mail-display.h: Include "mail-config.h" and add a display_style member.

	* mail-format.c (write_headers): Look at the MailDisplay's display_style
	instead of using the full_headers data.

	* folder-browser.c (folder_browser_set_message_display_style): Set
	the MailDisplay's display style as well as the global display
	style.
	(my_folder_browser_init): Don't save preference changes by default. (This
	is only observered wrt. the message display style but should apply to other
	items.)

	* folder-browser-factory.c (folder_browser_factory_new_control): Set this
	FB to save the preferences set in it.

	* folder-browser-ui.c (folder_browser_ui_add_message): Read our display's
	state instead of the global setting.

svn path=/trunk/; revision=11131
2001-07-16 18:32:10 +00:00
2864edc632 [Bug #4305: Make the automatic mark-as-read timer optional]
2001-07-10  Jason Leach  <jleach@ximian.com>

	[Bug #4305: Make the automatic mark-as-read timer optional]

	* mail-config.glade: Necessary changes to make the Mark as "Read"
	label a toggle button instead.

	* mail-accounts.c (construct): Connect to the "toggled" on our new
	toggle.
	(timeout_toggled): New callback, called from above.

	* mail-config.c (mail_config_get_do_seen_timeout): New.
	(mail_config_set_do_seen_timeout): New.
	(mail_config_write_on_exit): Save the preference here.
	(config_read): Load it here.

svn path=/trunk/; revision=10973
2001-07-10 21:08:02 +00:00
3efb097e66 Typo
2001-07-10  JP Rosevear  <jpr@ximian.com>

	* Makefile.am: Typo

svn path=/trunk/; revision=10966
2001-07-10 20:07:33 +00:00
ff91646452 Freeze and Thaw the folder.
2001-07-06  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (folder_browser_copy): Freeze and Thaw the
	folder.

svn path=/trunk/; revision=10855
2001-07-06 20:19:22 +00:00
2c8fa1b419 Mark the messages as Seen also. (folder_browser_class_init): Create an
2001-07-06  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (folder_browser_copy): Mark the messages as
	Seen also.
	(folder_browser_class_init): Create an atom type for
	X-Evolution-Message selection type.
	(my_folder_browser_init): Add our multiple selection types, one of
	which is the default string type.

	* component-factory.c (destination_folder_handle_drop): Update to
	use the new X-Evolution-Message type format.

	* folder-browser.c (selection_get): Convert the
	X-Evolution-Message clipboard type to whatever format the target
	wants.
	(message_list_drag_data_get): Update because the
	X-Evolution-Message type changed.
	(folder_browser_copy): Same.
	(x_evolution_message_parse): And here too.

svn path=/trunk/; revision=10853
2001-07-06 19:49:27 +00:00