Commit Graph

229 Commits

Author SHA1 Message Date
5616de5309 Select the very next message after deleting, not the next undeleted (it
2001-07-06  Jason Leach  <jleach@ximian.com>

	* mail-callbacks.c (delete_msg): Select the very next message
	after deleting, not the next undeleted (it can make things jump
	around in annoying ways if you are deleting many messages), bug #4032.

	* folder-browser.c: Forgot to commit the "Mark as Important" right
	click menu item.

	* message-list.c (message_list_set_folder): Setup the strikeout
	column here (after we've gotten the folder) so we can disable
	strikeouts for vtrash folders, part of bug #2224.

svn path=/trunk/; revision=10849
2001-07-06 18:02:01 +00:00
a507e83ea8 Compile fixes. #include errno.h and gnome-dialog-utils.h.
2001-07-03  Peter Williams  <peterw@ximian.com>

	* folder-browser.c (message_list_drag_data_get): Compile fixes.
	#include errno.h and gnome-dialog-utils.h. s/dirname/tmpdir/

svn path=/trunk/; revision=10757
2001-07-03 17:24:26 +00:00
0e893f8bc4 Prevent folders from appearing to have -1 new messages. Prevent nonactive
2001-07-03  Peter Williams  <peterw@ximian.com>

	Prevent folders from appearing to have -1 new messages. Prevent
	nonactive folders from updating the title bar. Make the title
	bar update when switching to an already-opened folder.

	* mail-folder-cache.c (update_message_counts): Ignore the value for
	'unread' if it is -1.
	(get_mail_info_receive): Same
	(mail_folder_cache_note_folderinfo): Same.
	(get_folder_info): Initialize 'fb' to NULL.
	(mail_folder_info): Add 'fb' member.
	(mail_folder_cache_note_fb): Change note_message_list to this.
	(update_idle): Only update the ShellView if the active folder browser
	is the same as the one that the MFI references.
	(mail_folder_cache_set_folder_browser): New function. Use it to set
	the active folder browser. NULL is okay.
	(check_for_fb_match): Called from the above. If the MFI has the
	new folder browser as its view, queue an update.

	* mail-folder-cache.h: Fix prototypes.

	* mail-callbacks.c (create_folders): Check if fi->url is nonnull.

	* folder-browser.c (got_folder): Change to use note_fb instead of
	note_messge_list.

	* folder-browser-factory.c (control_activate): Set the folder browser
	(control_deactivate): Clear it here.
	(fb_get_svi): Kill some inappropriately cut-n-pasted code.

svn path=/trunk/; revision=10755
2001-07-03 17:15:26 +00:00
ea9e426096 Use mkdtemp if we have it, else use mktemp but make the code safer than it
2001-07-03  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (message_list_drag_data_get): Use mkdtemp if we
	have it, else use mktemp but make the code safer than it was
	previously.

	* mail-display.c (launch_cb): Free the template string if the
	tempdir failed to be created.

svn path=/trunk/; revision=10753
2001-07-03 16:52:38 +00:00
ce575645ca Hide the URL passwd, auth, and params. (folder_browser_copy): Same.
2001-07-03  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (message_list_drag_data_get): Hide the URL
	passwd, auth, and params.
	(folder_browser_copy): Same.

svn path=/trunk/; revision=10749
2001-07-03 15:52:12 +00:00
36765e48f2 Updated for the mail_transfer_messages API.
2001-07-02  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (transfer_msg): Updated for the
	mail_transfer_messages API.

	* folder-browser.c (message_list_drag_data_recieved): Update for
	the mail_transfer_messages API.
	(selection_received): Same.

	* mail-ops.c (mail_transfer_messages): Renamed from
	mail_do_transfer_messages and also added a callback/data arguments
	since we need it component_factory::xfer_folder.

	* component-factory.c (xfer_folder): Use mail_transfer_messages
	instead.
	(destination_folder_handle_drop): Update to pass in a NULL
	callback arg and a NULL data argument to mail_transfer_messages.

svn path=/trunk/; revision=10710
2001-07-03 01:38:45 +00:00
26b8fe817e New file. Protoypes for the Mail Folder Cache, which provides a place for
2001-07-02  Peter Williams  <peterw@ximian.com>

        * mail-folder-cache.h: New file. Protoypes for the Mail Folder Cache, which
        provides a place for all the disparate pieces of the mailer to save bits of
        information about a folder. Centralizes the information display code.

        * mail-folder-cache.c: New file. Implements the Mail Folder Cache.

        * Makefile.am (evolution_mail_SOURCES): Add the mail-folder-cache.{c,h}

        * folder-browser-factory.c (fb_get_svi): Copy of that absurdly long-named
        function in mail-display.c that gets the GNOME_Evolution_ShellView.
        (control_activate): Set the ShellView for the folder cache.

        * folder-browser.c (got_folder): Tell the folder browser about this folder.

        * mail-callbacks.c (create_folders): Tell the folder cache about the new
        folders.

        * mail-local.c (reconfigure_folder_reconfigure): Don't unhook our
        events as we no longer hook them up.
        (register_folder_registered): Tell the folder cache about this
        folder's place in the local storage.
        (register_folder_register): No longer hook events; the Folder Cache
        will do this.
        (local_folder_changed, local_folder_changed_proxy): Move to mail-folder-cache.c
        (free_local_folder): No longer unhook events.

        * mail-ops.c (do_update_subfolders_rec): Instead of setting the
        folder status ourselves, inform the Folder Cache about the changes.

        * mail-tools.c (mail_tool_uri_to_folder): Replace danw's cache
        with the new Mail Folder Cache.
        (cache_folder, etc): removed.

svn path=/trunk/; revision=10694
2001-07-02 18:42:18 +00:00
fe0499e1d9 Changed to return the created window. (find_socket): Added. Copied from
2001-06-30  Jon Trowbridge  <trow@ximian.com>

        * mail-display.c (make_popup_window): Changed to return the
        created window.
        (find_socket): Added.  Copied from e-shell-view.c.  The fact
        that I'm copying this bit of code all over isn't cool.
        (html_button_press_event): Properly destroy the popup window when
        the widget inside the control is destroyed.

        * mail-callbacks.c (addrbook_sender): Added.  Implements
        the "Add sender to addressbook" right-click. (Bug #3645)
        (find_socket): Added.  Copied from e-shell-view.c.

        * folder-browser.c: Added "Add sender to addressbook" to
        context_menu[].

        * mail-display.c: (handle_embedded_address_object): Removed.
        (on_object_requested): Removed handling for embedded address
        objects.  (Which was obsolete crap.)

svn path=/trunk/; revision=10643
2001-07-01 00:41:13 +00:00
1d9490ba9d Don't bother trying to save the passwd if the url is NULL.
2001-06-28  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-config.c (mail_config_write_on_exit): Don't bother trying
	to save the passwd if the url is NULL.

	* folder-browser.c (vfolder_mlist): Strip the mlist name to fix
	bug #3732.

svn path=/trunk/; revision=10571
2001-06-28 19:52:36 +00:00
37b493b8f7 Since we have an exception variable, we might as well use it when getting
2001-06-28  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (destination_folder_handle_drop): Since we
	have an exception variable, we might as well use it when getting
	folders too.

	* folder-browser.c (message_list_drag_data_recieved): Call
	gtk_drag_finish.

svn path=/trunk/; revision=10568
2001-06-28 18:46:23 +00:00
418a137c3a After finding a folder, attach to its "folder_changed" and
* mail-tools.c (mail_tool_uri_to_folder): After finding a folder,
	attach to its "folder_changed" and "message_changed" signals.
	(update_unread_count, update_unread_count_main): Moved here from
	folder-browser but basically unchanged. Doing this here lets us
	get folder tree updates for folders that have had messages
	moved/copied/filtered into them, but which don't yet have a view
	associated with them.

	* folder-browser.c (update_unread_count, update_unread_count_main,
	etc): Moved to mail-tools.c

svn path=/trunk/; revision=10567
2001-06-28 17:06:05 +00:00
513c03c3f8 work around an e-tree bug
2001-06-27  jacob berkman  <jacob@ximian.com>

	* folder-browser.c (save_cursor_pos): work around an e-tree bug

svn path=/trunk/; revision=10541
2001-06-27 20:58:40 +00:00
205fef856f Fixed Cut/Copy/Paste to work - it turns out I couldn't share a single
2001-06-27  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c: Fixed Cut/Copy/Paste to work - it turns out I
	couldn't share a single GtkInvisible between all the
	FolderBrowser's after all.

svn path=/trunk/; revision=10536
2001-06-27 19:18:50 +00:00
e13e11965b Helps if I spell "received" correctly.
2001-06-26  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (my_folder_browser_init): Helps if I spell
	"received" correctly.

	* mail-config.c (mail_config_set_thread_list): If the value is
	already in the hash table, first remove it before setting the new
	value so we don't leak.
	(mail_config_set_show_preview): Same.

svn path=/trunk/; revision=10510
2001-06-26 21:01:41 +00:00
0601af0635 No longer returns a gboolean and also takes a CamelException.
2001-06-26  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (message_rfc822_dnd): No longer returns a
	gboolean and also takes a CamelException.
	(destination_folder_handle_drop): Do better error checking.

	* folder-browser.c (my_folder_browser_init): Connect to the
	tree-drag-data-recieved signal.
	(message_list_drag_data_recieved): New function that handles the
	recieving end of the DnD event.
	(x_evolution_message_parse): New convenience function to parse the
	x-evolution-message type so that the cut/paste and DnD code can
	share it.
	(selection_received): Use x_evolution_message_parse().

svn path=/trunk/; revision=10502
2001-06-26 16:44:08 +00:00
34d8df373a Check to make sure that clipboard_selection is non-NULL before we
2001-06-25  Joe Shaw  <joe@ximian.com>

	* folder-browser.c (invisible_destroyed): Check to make sure that
	clipboard_selection is non-NULL before we g_byte_array_free() it.

svn path=/trunk/; revision=10495
2001-06-25 23:06:14 +00:00
ff400deef2 tyop
svn path=/trunk/; revision=10492
2001-06-25 21:13:40 +00:00
57db15334b sync folders after we've gotten mail
2001-06-25  jacob berkman  <jacob@ximian.com>

	* mail-send-recv.c (free_send_data): sync folders after we've
	gotten mail

	* folder-browser-factory.c (control_activate): set the ui
	component on the folder browser
	(control_activate): update the view preview item
	(control_deactivate): don't sync the folder here
	(control_deactivate): unset the ui component of the folder browser

	* mail-callbacks.c (toggle_flags): stuff from jleach to add an
	importance keybinding
	(mark_as_important): ditto
	(toggle_as_important): again

	* mail-config.c (mail_config_get_show_preview):
	(mail_config_set_show_preview): basically a copy of
	get_thread_list() but for the preview pane

	* folder-browser.c (folder_browser_destroy): unref the our ui
	component
	(folder_browser_set_ui_component): new function for setting the ui
	component
	(save_cursor_pos):
	(set_cursor_pos): try to show the selected row when the preview
	pane is shown
	(folder_browser_set_message_preview): implement
	(folder_browser_toggle_preview): toggle the preview (duh)
	(on_key_press): add keybindings for marking as important (!), and
	hiding the preview pane (q)
	(etree_key): clean up a little bit, and make enter either show the
	preview pane or open the message
	(fb_resize_cb): only save the paned size if the preview is alread
	shown
	(folder_browser_gui_init): pass ourselves to fb_resize_cb
	(on_message_selected): only add the timeout if the preview is
	shown

svn path=/trunk/; revision=10491
2001-06-25 21:12:10 +00:00
b655dc216e Unref the invisible window that we use for slections.
2001-06-25  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (folder_browser_destroy): Unref the invisible
	window that we use for slections.
	(folder_browser_class_init): Init the clipboard_atam type.
	(selection_get): New
	(selection_clear_event): New
	(selection_received): New
	(folder_browser_copy): New function to copy the message-list
	selection.
	(folder_browser_cut): New function to cut the message-list
	selection.
	(folder_browser_paste): New function to paste the message-list
	selection.
	(my_folder_browser_init): Initialize `invisible` if it's NULL else
	ref it - also set some signals on it.

	* folder-browser-factory.c: Added verbs for cut/copy/paste.

svn path=/trunk/; revision=10489
2001-06-25 19:48:02 +00:00
81f97ede63 More than on accel key is a tad confusing.
2001-06-20  Kjartan Maraas  <kmaraas@gnome.org>

	* folder-browser.c: More than on accel key is a tad
	confusing.

svn path=/trunk/; revision=10328
2001-06-20 12:07:08 +00:00
dddc124a9d Accept text/uri-list mime types - this allows us to drag messages from
2001-06-19  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (destination_folder_handle_drop): Accept
	text/uri-list mime types - this allows us to drag messages from
	Nautilus into an Evolution folder.

	* folder-browser.c (message_list_drag_data_get): Do cleanup and
	better error handling.

svn path=/trunk/; revision=10296
2001-06-19 18:49:01 +00:00
60fe445b0c Change the drop-type "x-evolution-dnd" to "x-evolution-message" since we
2001-06-18  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c: Change the drop-type "x-evolution-dnd" to
	"x-evolution-message" since we want to be able to DnD more than
	one data type ;-)

	* folder-browser.c: Change supported DnD drop types to disclude
	URI_LIST as that seems to crash Nautilus and seems overly
	complicated. Since I am going to be supporting message/rfc822,
	hopefully Nautilus can handle that or else maybe something like
	text/plain.
	(message_list_drag_data_get): Remove the code for URI_LIST.

svn path=/trunk/; revision=10264
2001-06-18 16:06:34 +00:00
65a3be6b57 Allow user's to "copy" drag & drop rather than just "move".
2001-06-16  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (my_folder_browser_init): Allow user's to
	"copy" drag & drop rather than just "move".

svn path=/trunk/; revision=10258
2001-06-16 22:42:09 +00:00
7395fd6ba1 Implemented.
2001-06-15  Jeffrey Stedfast  <fejj@ximian.com>

	* component-factory.c (destination_folder_handle_drop): Implemented.

	* message-list.c (message_list_construct): Don't connect to the
	DnD signals here.
	(message_list_drag_data_get): Removed.
	(add_uid): Removed.

	* folder-browser.c (my_folder_browser_init): Connect to DnD signals.
	(message_list_drag_data_get): Implemented.

svn path=/trunk/; revision=10257
2001-06-15 21:40:12 +00:00
1fb67eaca4 Updated to reflect changes to mail_config_[g,s]et_thread_list().
2001-06-14  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (got_folder): Updated to reflect changes to
	mail_config_[g,s]et_thread_list().
	(folder_browser_toggle_threads): Same.

	* folder-browser-factory.c (control_activate): Updated to reflect
	changes to mail_config_[g,s]et_thread_list().

	* mail-config.c (mail_config_write_on_exit): Do cleanup when we're
	done.
	(mail_config_set_thread_list): Send in a URI so we can save the
	state on a per-folder basis.
	(mail_config_get_thread_list): Send in a URI so we can retrieve
	the state on a per-folder basis.

	* component-factory.c: Setup the accepted_dnd_types. Also added
	skeleton code for DnD.

svn path=/trunk/; revision=10240
2001-06-14 22:08:54 +00:00
1072bbd659 Add Reply-to-List bonobo verbs.
2001-06-14  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser-factory.c: Add Reply-to-List bonobo verbs.

	* folder-browser.c: Add Reply-to-List menu items.

	* mail-callbacks.c (mail_reply): Use an enum for specifying the
	reply mode, becaus enow we can reply-to-list.
	(reply_to_list): Implement.
	(reply_to_sender): Use REPLY_SENDER.
	(reply_to_all): Use REPLY_ALL.
	(mail_generate_reply): Handle the different modes.

svn path=/trunk/; revision=10232
2001-06-14 19:05:39 +00:00
06ebf6a67e Added fields for the GalViewMenus and GalViewCollection, since we need to
2001-06-01  Federico Mena Quintero  <federico@ximian.com>

	* folder-browser.h (FolderBrowser): Added fields for the
	GalViewMenus and GalViewCollection, since we need to keep them
	around while the component is active.

	* folder-browser-factory.c (folder_browser_setup_view_menus): Plug
	leaks; unref the spec and factory.  Set the view collection and
	the view menus on the FolderBrowser object.
	(folder_browser_discard_view_menus): New function.
	(control_deactivate): Discard the menus.

	* folder-browser.c (folder_browser_destroy): Destroy the view
	collection and the view menus.

svn path=/trunk/; revision=10086
2001-06-01 23:28:13 +00:00
7031a911d7 Functions to determine if a folderbrowser is one of the drafts, sent, or
* folder-browser.c (folder_browser_is_drafts,
	folder_browser_is_sent, folder_browser_is_outbox): Functions to
	determine if a folderbrowser is one of the drafts, sent, or outbox
	folders.
	(got_folder): Pass TRUE for the "outgoing" flag to
	message_list_set_folder if this is a Sent, Drafts, or Outbox
	folder.

	* message-list.c (message_list_set_folder): Take a flag saying
	whether or not the folder is an "outgoing" folder.
	(message_list_setup_etree): Ditto. Use that rather than a
	hardcoded list of foldernames for deciding whether to swap From
	and To in the default layout.

	* mail-config.c (mail_config_folder_to_cachename): Make IMAP
	folders have unique cachenames rather than only one per store, so
	that IMAP Sent and Drafts folders don't get forced into having the
	same layout as the INBOX.

	* mail-callbacks.c: (is_sent_folder, is_drafts_folder): Gone.
	Replaced with simpler folder_browser_is_* routines.
	(edit_msg, resend_msg, open_msg): Use folder_browser_is_*
	routines.

	* mail-local.c (reconfigure_clicked): Update call to
	message_list_set_folder.

svn path=/trunk/; revision=9857
2001-05-16 21:40:52 +00:00
dadc54fa98 Load http images if the user has force-loaded images too.
* mail-display.c (on_url_requested): Load http images if the user
	has force-loaded images too.
	(mail_display_redisplay): Update for normal/headers/source changes.
	(mail_display_load_images): New. Force HTTP image loading for the
	current message.

	* mail-config.c (mail_config_get_message_display_style,
	mail_config_set_message_display_style): Updated and renamed from
	mail_config_{get,set}_view_source

	* mail-callbacks.c (load_images): New.

	* folder-browser.c (folder_browser_set_message_display_style):
	Renamed and updated from folder_browser_toggle_view_source.

	* folder-browser-factory.c (verbs): Add ViewLoadImages.
	(control_activate): Update for normal/headers/source change to
	radio group.

svn path=/trunk/; revision=9820
2001-05-15 18:45:42 +00:00
3238e3a9f1 Remove this... it's not used any more.
* mail-mlist-magic.c: Remove this... it's not used any more.

	* folder-browser.c:
	* message-browser.c: Remove references to mail-mlist-magic.h

svn path=/trunk/; revision=9800
2001-05-14 21:28:36 +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
1f52a5d0fa Use secondary searches here, so that we control the interference between
2001-05-14  Jon Trowbridge  <trow@ximian.com>

        * folder-browser.c (folder_browser_config_search): Use secondary
        searches here, so that we control the interference between the two
        bits of searching UI.

2001-05-13  Jon Trowbridge  <trow@ximian.com>

        * mail-search.c (mail_search_construct): Destroy the MailSearch
        dialog if the underlying MailDisplay is destroyed.  I don't like
        the way that label in the dialog with the message subject in it
        looks, so I've #ifdef-ed it out for now.  Center the Matches
        label --- it makes the dialog look more balanced, I think.
        (dialog_clicked_cb): Changed to reflect adjusted
        ESearchingTokenizer API, using primary searches.
        (toggled_case_cb): Use the primary search API.

        * e-searching-tokenizer.c: Make searching routines utf8-friendly.
        Rationalize how the match begin/end markup is handled; allow for
        begin/end markup that varies by search.  Add concept of primary and
        secondary matching, to disentangle possible interactions between
        search-bar searches and search-dialog searches.

svn path=/trunk/; revision=9789
2001-05-14 05:06:16 +00:00
59c9d146b9 Use the ESearchingTokenizer to highlight search matches for folder-level
2001-05-10  Jon Trowbridge  <trow@ximian.com>

	* folder-browser.c (folder_browser_config_search): Use the
	ESearchingTokenizer to highlight search matches for folder-level
	searches.  Still mildly broken, but it works for the simple cases.

	* mail-display.c (mail_display_new): Use our ESearchingTokenizer
	for the mail display GtkHTML widget.

	* mail-search.c (dialog_clicked_cb): Use the ESearchingTokenizer to
	highlight search matches.
	(mail_search_construct): Add a match count to the search dialog.

	* e-searching-tokenizer.c
	(e_searching_tokenizer_set_search_string): Added.  A custom HTML
	tokenizer that does highlighting of search strings.

svn path=/trunk/; revision=9754
2001-05-11 04:27:35 +00:00
dd04e750f2 Don't advance to the next undeleted message after "Delete"...
* folder-browser.c (on_key_press): Don't advance to the next
	undeleted message after "Delete"...

	* mail-callbacks.c (delete_msg): ...instead, do it here, whether
	the user used Delete, Alt+D, or the toolbar. (But only if they
	only deleted a single message.)

	* message-list.c (message_list_select): Don't clear the display on
	failure.
	(build_tree): Clear the display when the currently-selected
	message stops existing and we don't have an obvious message to
	select instead of it. (Eg, when deleting the last message with
	"hide deleted messages" set, or expunging while a deleted message
	is selected.)

svn path=/trunk/; revision=9744
2001-05-10 16:16:06 +00:00
a8cdef7243 Connect to key_press_event on the GtkHTML widget. (etree_key): Only handle
* folder-browser.c (my_folder_browser_init): Connect to
	key_press_event on the GtkHTML widget.
	(etree_key): Only handle space/backspace here, pass the rest off
	to on_key_press.
	(on_key_press): Handle Delete/N/P/Menu in either MessageList or
	MailDisplay.

	* message-list.c (message_list_select): Grab focus if we don't
	have it.

svn path=/trunk/; revision=9694
2001-05-07 19:16:05 +00:00
155fcd8153 only remove event handlers if we set them up originally, to avoid
warnings from camel

svn path=/trunk/; revision=9631
2001-04-30 15:48:00 +00:00
246388d822 Unhook event handlers before syncing the folder, since the folder browser
* folder-browser.c (folder_browser_destroy): Unhook event handlers
	before syncing the folder, since the folder browser will have been
	destroyed by the time the sync thread completes and calls the
	signal handlers.

svn path=/trunk/; revision=9630
2001-04-30 13:55:29 +00:00
b61b14b324 Added a new signal, "message_loaded" that gets emitted when the message
2001-04-24  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c: Added a new signal, "message_loaded" that gets
	emitted when the message has been loaded and set on the
	mail_display.
	(folder_browser_class_init): Define the "message_loaded" signal
	stuff.
	(done_message_selected): Emit the "message_loaded" signal here.

	* message-browser.c (message_browser_next_msg): Do our own
	message-list manipulation. We want the next message, not the next
	unread message.
	(message_browser_prev_msg): Same here but for previous.
	(message_browser_new): Connect to the folder browser's
	"message_loaded" signal.
	(message_browser_folder_loaded): Don't connect to the
	message-list's "message_selected" signal.
	(message_browser_message_loaded): Nw callback which replaces the
	old message_browser_message_selected callback's functionality.

svn path=/trunk/; revision=9551
2001-04-24 20:56:56 +00:00
946ca213c4 Add accelerators to the context menu. (on_right_click): Use
* folder-browser.c: Add accelerators to the context menu.
	(on_right_click): Use e_tree_get_cell_geometry and a
	GtkMenuPositionFunc when responding to a Menu-key press so we can
	line the menu up with the selected row rather than the cursor.

	* message-browser.c: include <gal/util/e-util.h> for E_MAKE_TYPE.

svn path=/trunk/; revision=9547
2001-04-24 16:23:51 +00:00
373b8669f5 Use the message-browser widget rather than the mail-view window.
2001-04-23  Jeffrey Stedfast  <fejj@ximian.com>

	* mail-callbacks.c (do_view_message): Use the message-browser
	widget rather than the mail-view window.

	* mail-view.c: Removed.

	* folder-browser.c: Added a folder_loaded signal.

	* message-browser.[c,h]: New window to solve all our message
	browsing needs. This replaces mail-view.c.

	* message-list.c (message_list_select_uid): New function needed by
	the new message-browser window.

svn path=/trunk/; revision=9525
2001-04-23 21:16:00 +00:00
b50306c380 use system = EVOLUTION_DATADIR "/file" instead of g_strdup_printf. Rename
2001-04-22  Gediminas Paulauskas <menesis@delfi.lt>

	* folder-browser.c, mail-autofilter.c, mail-callbacks.c, mail-ops.c,
	mail-summary.c, mail-vfolder.c: use system = EVOLUTION_DATADIR "/file"
	instead of g_strdup_printf. Rename userrules to user (and system) to be
	consistent.

	* mail-send-recv.c: set window icon to send-receive.xpm

2001-04-21  Gediminas Paulauskas <menesis@delfi.lt>

	* mail-summary.c: translate "Mail summary".

svn path=/trunk/; revision=9490
2001-04-21 22:52:56 +00:00
d7cd78ec3b Don't printf NULL
* folder-browser.c (do_message_selected, on_message_selected):
        Don't printf NULL

svn path=/trunk/; revision=9278
2001-04-12 18:41:31 +00:00
130017e157 Merge from evolution-0-10 to evolution-0-10-merge-0 into head.
2001-04-05  Not Zed  <NotZed@Ximian.com>

	* Merge from evolution-0-10 to evolution-0-10-merge-0 into head.

svn path=/trunk/; revision=9193
2001-04-05 02:06:26 +00:00
57574f0be3 Cleaned up #includes. Remove unneccesary includes of <gnome.h>,
2001-03-29  Kjartan Maraas  <kmaraas@gnome.org>

	* *.*: Cleaned up #includes. Remove unneccesary includes of
	<gnome.h>, <gtk/gtk.h>, <bonobo.h> and replaced with more
	fine grained headers where needed. Also marked a bunch of
	strings for translations and added some missing prototypes.

svn path=/trunk/; revision=9025
2001-03-29 20:53:17 +00:00
76219e84e7 Made this check if the control mask is set.
2001-03-20  Christopher James Lahey  <clahey@ximian.com>

	* folder-browser.c (etree_key): Made this check if the control
	mask is set.

svn path=/trunk/; revision=8844
2001-03-20 09:52:54 +00:00
68a731e0a0 Bumped gal requirement to 0.5.99.8.
2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* configure.in: Bumped gal requirement to 0.5.99.8.

From addressbook/ChangeLog:

2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* Merged branch:

2001-03-14  Christopher James Lahey  <clahey@ximian.com>

	* gui/widgets/e-minicard-view.c: Call
	e_selection_model_simple_insert_rows and
	e_selection_model_simple_delete_rows instead of
	e_selection_model_simple_insert_row and
	e_selection_model_simple_delete_row.

End of branch

From mail/ChangeLog:

2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* Merged e-tree-rework-branch:

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* message-list.c: Added has_save_id and get_save_id methods.

	* subscribe-dialog.c: Added arguments for
	e_tree_memory_callbacks_new of get_save_id and has_save_id to
	NULL.

2001-03-16  Christopher James Lahey  <clahey@ximian.com>

	* message-list.c: Added a call to
	e_tree_memory_set_expanded_default to TRUE.  Removed all calls to
	set_expanded on nodes while the tree is frozen since this fails
	miserably now.

2001-03-13  Christopher James Lahey  <clahey@ximian.com>

	* message-list.c (message_list_get_layout): Turned off draw-grid.

2001-03-09  Christopher James Lahey  <clahey@ximian.com>

	* folder-browser-factory.c, folder-browser.c, message-list.c,
	message-list.h, subscribe-dialog.c, subscribe-dialog.h,
	mail-callbacks.c: Converted these all to use ETree instead of
	ETable.

End of branch

From shell/ChangeLog:

2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* Merged e-tree-rework-branch:

2001-03-19  Christopher James Lahey  <clahey@ximian.com>

	* e-storage-set-view.c (etree_get_save_id): Made "root" detection
	deal properly with removed nodes.

2001-03-18  Christopher James Lahey  <clahey@ximian.com>

	* e-shell-view.c (e_shell_view_save_settings): Added some unused
	code to implement saving of the expanded state.

	* e-storage-set-view.c: Added has_save_id and get_save_id methods.

2001-03-13  Christopher James Lahey  <clahey@ximian.com>

	* e-storage-set-view.c (ETREE_SPEC): Set draw-grid here to false.

2001-03-09  Christopher James Lahey  <clahey@ximian.com>

	* e-storage-set-view.c, e-storage-set-view.h: Chaned this to use
	ETree instead of ETable.

End of branch

svn path=/trunk/; revision=8839
2001-03-20 04:48:59 +00:00
2a9d6b7ad6 Add Resend Message menu item.
2001-03-19  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser-factory.c: Add Resend Message menu item.

	* folder-browser.c (on_right_click): Add resend to the right-click
	menu.

	* mail-callbacks.c (composer_sent_cb): Unref the message.
	(composer_postpone_cb): Unref the message here too.
	(resend_msg): New callback to allow resending of messages in the
	Sent folder.

svn path=/trunk/; revision=8816
2001-03-19 06:11:59 +00:00
fcb4ed5a4f Move the proxy event outside the lock (otherwise we always deadlock).
2001-03-17  Not Zed  <NotZed@Ximian.com>

	* mail-mt.c (mail_msg_free): Move the proxy event outside the lock
	(otherwise we always deadlock).

	* mail-local.c (reconfigure_clicked): Clear the message list
	during update inside the folder thingy.  This is a hell mess, need
	to move the gui stuff to mail-callbacks and make this reconfigure
	thing a more generic func.

	* message-list.c (ml_value_to_string): Cleanup the logic to use
	lookup tables.
	(sort_uid_to_rows): Removed due to rewrite below.
	(build_flat_diff): Changes for node/summary/etc changes.  Also do
	changed nodes too.
	(clear_tree): Free the info reference for nodes in our hashtable.
	(build_subtree): Ref the info reference in our hash/tree node.
	(on_click): Dont free message info, since we just got our ref to
	it.
	(remove_node_diff): Free messageinfo off node.
	(build_flat): Ref messageinfo.
	(message_list_set_folder): Allow a NULL folder to be set -
	i.e. clear the view.
	(message_list_set_folder): Emit a no message sleeted signal.
	(build_tree): Change cursor keeping stuff to work with new info.

	Turned off BROKEN_ETREE - well maybe it'll work.  Check for
	duplicate messages displayed, etc.

2001-03-16  Not Zed  <NotZed@Ximian.com>

	* message-list.h: Added uid_nodemap; mapping of uid's to e-tree
	nodes.

	* message-list.c (build_flat): Changed to take a summary argument,
	and to store node in node map, etc, and store info's in e-tree.
	(build_subtree): Changed to store node in node map, and to store
	info's in tree directly.
	(ml_tree_value_at): Changed to get info directly from tree node,
	removed allocated return value logic.
	(ml_tree_value_at): Removed all "fake node" handling, no fake
	nodes should ever exist.
	(id_is_uid, id_is_subject, id_uid, id_subject): Removed macro's no
	longer used.
	(new_id_from_uid, new_id_from_subject): Removed no longer used.
	(get_message_uid):
	(get_message_info): Treat tree node data as messageinfo.
	(message_list_select): Dont free the messageinfo, as its part of
	our data, not retrieved from folder.
	(message_list_drag_data_get): ditto.
	(subtree_unread): Treat tree node data as messageinfo.
	(subtree_size): ditto.
	(subtree_earliest): ditto.
	(clear_tree): Reset uid_nodemap on clear.
	(save_node_state): tree nodes == messageinfo's.
	(add_node_diff): ditto.
	(remove_node_diff): ditto.
	(main_folder_changed): use uid_nodemap to lookup changed nodes.
	(main_message_changed): ditto.

svn path=/trunk/; revision=8775
2001-03-17 04:56:54 +00:00
6e5821b6d2 Added edit item to search-bar menu.
2001-03-15  Not Zed  <NotZed@Ximian.com>

        * folder-browser.c: Added edit item to search-bar menu.

        * mail-callbacks.c (filter_edit): Changed for filter_editor_new()
        api addition/change.

        * mail-vfolder.c (vfolder_edit): Use vfolder_editor_new intead.

svn path=/trunk/; revision=8731
2001-03-15 06:57:20 +00:00
b55ef8b523 Call open_msg here so that it does the Right Thing (tm).
2001-03-08  Jeffrey Stedfast  <fejj@ximian.com>

	* folder-browser.c (on_double_click): Call open_msg here so that
	it does the Right Thing (tm).

svn path=/trunk/; revision=8600
2001-03-08 21:52:27 +00:00