2002-01-08 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (message_list_select): When performing a
wraparound, check to see if the first (or last depending on
direction) message fits the selection criteria before telling
etable to find the next/previous matching node.
* mail-account-gui.c (mail_account_gui_new): When connecting to
the transport username changed event, pass the gui->transport not
the gui->source.
svn path=/trunk/; revision=15267
2002-01-08 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (mail_account_gui_new): When connecting to
the transport username changed event, pass the gui->transport not
the gui->source.
svn path=/trunk/; revision=15266
2002-01-02 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (list_add_addresses): Simplified. Also no
longer needs an "ignore_addr" argument as far as I can tell so
that has been removed.
(mail_generate_reply): Don't pass an ignore_addr argument to
list_add_addresses and also change to use g_strcase_hash and
g_strcase_equal since addresses are not case snesitive
(mostly). Also, Reply-To can contain multiple addresses, so handle
this case too.
svn path=/trunk/; revision=15231
2002-01-02 JP Rosevear <jpr@ximian.com>
* mail-callbacks.c: remove e_gnome_dialog util functions and use
e-util ones instead
2002-01-02 JP Rosevear <jpr@ximian.com>
* e-dialog-utils.c (e_gnome_dialog_set_parent): util function
moved from mail-callbacks, also destroys the dialog if the parent
is destroyed
(e_gnome_warning_dialog_parented): similarly
(e_gnome_ok_cancel_dialog_parented): ditto
* e-dialog-utils.h: new protos
svn path=/trunk/; revision=15225
2001-12-21 Jeffrey Stedfast <fejj@ximian.com>
The idea here is that if we consistantly name the movemail file
between Send&Receive sessions that if the user cancells the
"download" of a mbox spool that the next Send&Receive will not
"lose" mail that didn't finish the previous session. Fixes bug
#17759. Well, mostly. If you have 200 messages and cancel after
the first 100, say, then the next time you hit Send&Receive, it
will start over from 1 so you'll end up duplicating the first 100
messages, but at least you won't "lose" mail.
* mail-tools.c (mail_tool_get_local_movemail_path): Now a static
internal function, takes a char *uri argument and no longer
generates movemail.%d filenames... they are now based on the uri
provided.
(mail_tool_do_movemail): Pass along the source_uri.
svn path=/trunk/; revision=15224
2001-12-20 Jon Trowbridge <trow@ximian.com>
* message-list.c (on_click): Makes the auto-undelete behavior when
changing message flags a bit more sane. (Fixes#17634)
svn path=/trunk/; revision=15200
2001-12-19 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (composer_get_message): Add the auto-cc/bcc
recipients here. The problem with setting them in the composer is
that what if the user changes which account he wants to use? We'd
either have to clear the cc/bcc lists *or* we'd have to leave them
alone. Either way is bad. We can't just clear the entries because
the user may have added addresses since the composer was
opened. We don't want to leave any old auto-cc/bcc addresses there
because that isn't desirable either. So we give up and add them
here after the user has already hit the send button.
* mail-config.c (account_copy): Update to copy the always-[b]cc
options.
(account_destroy): Update to destroy the above options.
(config_read): Update to read in those values.
(mail_config_write): Save those options.
* mail-account-gui.c (mail_account_gui_new): Setup Always Cc/Bcc
widgets.
(mail_account_gui_save): Get the user-entered values for the
always-cc/bcc stuff.
svn path=/trunk/; revision=15189
2001-12-19 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (setup_service): If the provider is NULL,
don't do anything.
* mail-accounts.c (construct): Oops, no wonder the exec command
thing never stuck around... I wasn't getting the right widget from
libglade. Also connect to the GtkEntry's changed event since a
GnomeFileEntry doesn't have that signal in its ancestry.
svn path=/trunk/; revision=15188
2001-12-19 Jeffrey Stedfast <fejj@ximian.com>
* mail-accounts.c (construct): Oops, no wonder the exec command
thing never stuck around... I wasn't getting the right widget from
libglade.
svn path=/trunk/; revision=15187
2001-12-18 Jeffrey Stedfast <fejj@ximian.com>
* mail-ops.c (filter_folder_free): Argh, don't notify about new
mail here.
(fetch_mail_fetch): Notify about new mail here instead.
svn path=/trunk/; revision=15170
2001-12-18 Jeffrey Stedfast <fejj@ximian.com>
* mail-accounts.c (construct): Setup the new-mail-notification
widgets.
(notify_command_changed): Update the command-line for new mail
notification.
(notify_radio_toggled): Update the new-mail-notification type.
* mail-ops.c (filter_folder_free): See if we got any new mail and
"sound the alarm" if we did.
svn path=/trunk/; revision=15168
2001-12-17 Jon Trowbridge <trow@ximian.com>
* mail-format.c (handle_text_plain_flowed): Set citation color to
black when we are printing.
svn path=/trunk/; revision=15140
2001-12-17 Jon Trowbridge <trow@ximian.com>
* mail-format.c (attachment_header): Avoid embedding <object> tags
when we are printing.
(handle_multipart_signed): Don't do the click-for-info signature
stuff when we are printing.
(handle_via_bonobo): Don't embed an <object> tag if we are
printing.
* folder-browser.c: Changed context_menu[] array so that we can
print when the preview pane is closed.
svn path=/trunk/; revision=15139
2001-12-12 Jeffrey Stedfast <fejJ@ximian.com>
* mail-config.c (mail_config_check_service): Connect to the
destroy signal on the popup dialog.
2001-12-12 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (handle_text_plain): Make sure i != num_specials
after we check for any special text markers. Fixes bug #12265.
svn path=/trunk/; revision=15085
2001-12-14 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (try_inline_pgp):
(try_inline_pgp_sig): Start reiplementing The Right Way and not
danw's fucking half-assed kludge that doesn't work.
svn path=/trunk/; revision=15076
2001-12-12 Jeffrey Stedfast <fejj@ximian.com>
* mail-config.c (mail_config_set_new_mail_notification_command):
set the new-mail-notify command.
(mail_config_get_new_mail_notification_command): get the
new-mail-notify command.
(mail_config_set_new_mail_notification): set the
new-mail-notification action.
(mail_config_get_new_mail_notification): get the
new-mail-notification action.
(mail_config_write_on_exit): save the new-mail-notification
settings.
(config_read): Read in the new-mail-notification settings.
* mail-ops.c (mail_execute_shell_command): New function to execute
a shell command async. Will be used for playing sounds on new mail
or whatever.
svn path=/trunk/; revision=15005
2001-12-11 Jon Trowbridge <trow@ximian.com>
* mail-identify.c (mail_identify_mime_part): Fixed for
mail_content_loaded's new signature.
* mail-format.c (attachment_header): Don't convert URLs, etc. if
we are printing.
(write_address): Don't convert addresses to mailto: links if we
are printing.
(write_one_text_plain_chunk): Add a printing flag, that we pass
along to mail_text_write.
(handle_text_plain): Pass our printing flag to
write_one_text_plain_chunk.
(mail_get_message_rfc822): Don't unneccesarily convert URLs.
(mail_content_loaded): Add a GtkHTML parameter.
* mail-display.c (mail_display_initialize_gtkhtml): Added. Breaks
all of the signal hookups out of mail_display_new.
(mail_display_new): Call mail_display_initialize_gtkhtml.
(mail_text_write): Don't convert URLs, etc., if we are printing.
Lots of other changes to pass around GtkHTML/GtkHTMLStream objects.
* mail-callbacks.c (do_mail_print): Call
mail_display_initialize_gtkhtml on our GtkHTML object.
* folder-browser.c (update_status_bar): Make the status bar more
useful when you have a large number of hidden messages.
svn path=/trunk/; revision=14997
2001-12-11 Jon Trowbridge <trow@ximian.com>
* message-list.etspec: Add ETable magic for our new "Needs Reply"
column. (The next few entries are for bug #90)
* message-list.h: Add COL_NEED_REPLY.
* message-list.c: Move mail_need_reply_xpm to the end of
states_pixmaps.
(ml_duplicate_value): Handle COL_NEED_REPLY.
(ml_free_value): Handle COL_NEED_REPLY.
(ml_initialize_value): Handle COL_NEED_REPLY.
(ml_value_is_empty): Handle COL_NEED_REPLY. Added
needs_reply_map[] array.
(ml_value_to_string): Handle COL_NEED_REPLY.
(ml_tree_value_at): Fix magic numbers, undoing my changes from the
otehr day. Add handler for COL_NEED_REPLY.
(message_list_create_extras): Attach icons for COL_NEED_REPLY.
(on_click): Undo my previous changes to display need-reply status
in COL_MESSAGE_STATUS. Add handing for COL_NEED_REPLY.
* mail.h: Change mail_format_mime_message, mail_format_raw_message
and the MailMimeHandlerFn typedef to take GtkHTML and
GtkHTMLStream args, as per our changes in mail-format.c.
* mail-format.c: Giant refactoring. Remove the assumption
throughout that we will always want to render into the GtkHTML
object contained in the MailDisplay. Instead, always pass in the
GtkHTML and GtkHTMLStream that we want to write to. Also, ignore
theme work-arounds if the printing flag is set. (This and what
follows fixes bug #82)
* mail-display.h: Remove GtkHTMLStream *stream from MailDisplay.
We don't need it anymore.
* mail-display.c (mail_display_render): Added. Breaks the code
that renders the message into the GtkHTML object out of
mail_display_redisplay.
(mail_display_redisplay): Call mail_display_render.
(mail_display_init): Remove reference to ->stream.
(mail_display_new): Remove reference to ->stream.
* mail-callbacks.c (do_mail_print): Create a new GtkHTML to render
our printed version into (via the new function
mail_display_render. Set the MailDisplay's printing flag to TRUE
before we render, and set it back to FALSE afterwards.
(do_mail_fetch_and_print): If the preview pane isn't open when we
try to print, fetch the message before printing.
(print_msg): Call do_mail_fetch_and_print.
(print_preview_msg): Call do_mail_fetch_and_print.
* folder-browser-ui.c: Remove "PrintMessage" and
"PrintPreviewMessage" from message_pane_enables... these now work
when the preview pane is closed. Disable printing if multiple
messages are selected.
svn path=/trunk/; revision=14981
2001-12-04 Jeffrey Stedfast <fejj@ximian.com>
* mail-autofilter.c (rule_from_message): Make sure that the
message subject is non-NULL beforetrying to base a vfolder rule
off it. Fixes bug #16284.
2001-12-07 Jeffrey Stedfast <fejj@ximian.com>
* mail-accounts.c (construct): Connect to the dialog's "destroy"
event and close any druids/editors that may be open when that
signal is caught. Fixes bug #16501.
* mail-vfolder.c (vfolder_edit): Set the window title to "Virtual
Folders". Fixes bug #16695.
svn path=/trunk/; revision=14966
2001-12-05 Radek Doulik <rodo@ximian.com>
* mail-callbacks.c (do_mail_print): set paper size to
_("US-Letter"), use gtk_html_print_set_master
svn path=/trunk/; revision=14953
* mail-display.c (on_object_requested): Don't just assume all of
the GtkHTMLEmbedded's fields are filled in, since HTML messages
may have <object>s in them that we're not expecting.
* mail-send-recv.c (mail_send_receive): Add a "current_folder"
arg.
(build_dialogue): Remember the current_folder
(free_send_data): If current_folder is set, refresh it so it's
guaranteed to be synced with the folder tree. Fixes#14770.
* mail-callbacks.c (send_receive_mail): Pass current_folder to
mail_send_receive().
svn path=/trunk/; revision=14950
Implements marking messages as "Need Reply".
2001-12-09 Jon Trowbridge <trow@ximian.com>
* mail-need-reply.xpm: Added a really, really ugly and
awful icon to symbolize "message needs a reply".
* Makefile.am (EXTRA_DIST): Added mail-need-reply.xpm.
2001-12-09 Jon Trowbridge <trow@ximian.com>
* camel-folder-summary.c: Add "NeedsReply" to the flag_names array
for CAMEL_MESSAGE_NEEDS_REPLY.
* camel-folder-summary.h: Added CAMEL_MESSAGE_NEEDS_REPLY flag.
2001-12-09 Jon Trowbridge <trow@ximian.com>
* vfoldertypes.xml: Add "Needs Reply" option to different status
types.
* filtertypes.xml: Add "Needs Reply" option to different status
types.
2001-12-09 Jon Trowbridge <trow@ximian.com>
* message-list.c: #include "art/mail-need-reply.xpm".
(ml_tree_value_at): Adjust magic numbers, show "Need Reply" icon
if the message needs reply.
(message_list_create_extras): Adjust magic numbers to add new
icon.
(on_click): Changed to toggle between unread, read, and need reply
when the status icon is clicked.
* mail-callbacks.c (mark_as_needing_reply): Added.
(mark_as_not_needing_reply): Added. Add "set" value to struct
post_send_data.
(composer_sent_cb): Use both "flags" and "set" elements of
post_send_data when setting message flags.
(mail_reply): Clear "Needs Reply" flag when we actually reply to a
message.
* folder-browser.c: Changed flag values to be given by
bit-shifting (1<<5) vs. base-ten (32). Added
CAN_MARK_DOESNT_NEED_REPLY flag. Added "Mark as Needing Reply"
and "Mark as Not Needing Reply" elements to context menu.
(on_right_click): Hide "Mark as (Not) Needing Reply" context menu
elements as appropriate.
svn path=/trunk/; revision=14946
2001-12-04 Jeffrey Stedfast <fejj@ximian.com>
* mail-display.c (stream_write_or_redisplay_when_loaded): Check
that the mail-display hasn't been destroyed.
(mail_display_redisplay): Same here.
2001-12-07 Dan Winship <danw@ximian.com>
* mail-send-recv.c (receive_update_got_store): If updating a store
that we don't have an associated storage for, just request a
folder tree and then free it. (For the Connector)
* mail-callbacks.h: Add missing part of Jeff's 12-03 patch so this
actually compiles.
svn path=/trunk/; revision=14938
2001-12-03 Jeffrey Stedfast <fejj@ximian.com>
* mail-ops.c (mail_send_message): Don't append "(Preview Version)"
at the end of the version string. Use the PREVIEW_RELEASE #define
instead.
svn path=/trunk/; revision=14913
2001-12-03 Jeffrey Stedfast <fejj@ximian.com>
* folder-browser-ui.c: Setup the UI for the AddSenderToAddressbook
ui verb thingy.
* mail-callbacks.c (add_sender_to_addrbook): New bonobo-ui
callback that adds a sender to the addressbook.
svn path=/trunk/; revision=14905
2001-12-04 Jon Trowbridge <trow@ximian.com>
* folder-browser-ui.c (folder_browser_ui_set_selection_state):
Allow 'n' and 'p' to work when multiple messages are selected.
Fixes#12062.
svn path=/trunk/; revision=14874
2001-11-28 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (save_msg_ok): If the path exists, make sure
it's a regular file (or we can't possibly save to it). Fix for
#14127.
2001-11-28 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (message_list_select): Cleaned up the code.
* mail-callbacks.c (previous_unread_msg): Pass wraparound as TRUE.
svn path=/trunk/; revision=14850
2001-11-27 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (format_mime_part): Reverted the non-NULL
mime-type patch from a little while back, didn't mean to commit
this.
svn path=/trunk/; revision=14798
2001-11-25 Not Zed <NotZed@Ximian.com>
* mail-config.c (config_read): Enable news accounts that exist
always, since no gui for it.
2001-11-20 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (message_list_select): 'n' shouldn't wrap if 'p'
doesn't.
* mail-format.c (format_mime_part): Make sure the mime-type is
non-NULL before passing it off to mail_lookup_handler().
2001-11-20 Not Zed <NotZed@Ximian.com>
* folder-browser-ui.c: Disable search if no message
loaded/viewed. Also for #14348.
* folder-browser.c: Disable "Add sender to addressbook" if we dont
have a message loaded (it wont work). For #14348.
2001-11-20 Jeffrey Stedfast <fejj@ximian.com>
* mail-display.c (load_content_loaded): Make sure the mail-display
object is still "alive" before accessing any of it's data.
svn path=/trunk/; revision=14796
2001-11-16 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (message_list_hide_clear): Save hide state.
(message_list_hide_uids): Save hide state.
(message_list_hide_add): Save hide state.
* mail-format.c (format_mime_part): Make sure the mime-type is
non-NULL before passing it off to mail_lookup_handler().
svn path=/trunk/; revision=14734
* main.c (segv_redirect): Instead of doing pthread_exit() after
redirecting the SEGV, try to lock a mutex we know is already
locked. This will hopefully help debug a bunch of bugs where the
crashed thread seems to be missing from the bug-buddy report.
svn path=/trunk/; revision=14699
2001-11-13 Jeffrey Stedfast <fejj@ximian.com>
* mail-session.c (pass_got): Call e_passwords_remember_password()
for account passwords if the user set the "remember password"
checkbox.
svn path=/trunk/; revision=14696