2003-10-22 Jeffrey Stedfast <fejj@ximian.com>
* mail-component.c (parse_uid_list): Removed, use
em_utils_selection_get_uidlist() instead.
(drop_uid_list): Use em_utils_selection_get_uidlist() to parse the
x-uid-list selection data and use mail_tool_uri_to_folder()
directly since we have the uri (originally we expected the first
component of the selection data to be the e-storage-set-view
folder path rather than the uri).
(folder_receive_drop_cb): Call gtk_drag_finish() here.
* message-list.c: s/x-evolution-message/x-uid-list/
* em-utils.c: Same.
2003-10-22 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c (impl_createControls): Use
e_storage_browser_peek_widget_scrolled() to retrieve the scrolled
window that the EStorageSetView is contained in.
2003-10-22 Ettore Perazzoli <ettore@ximian.com>
* GNOME_Evolution_Mail.server.in.in: Add an
"evolution:button_label" attribute to the Component for use in the
shell.
2003-10-22 Not Zed <NotZed@Ximian.com>
* mail-component.c (em_copy_folders): handle destination of ""
properly.
(emc_popup_copy_folder_selected): handle url->path properly, strip
leading /.
(em_copy_folders): if we just created a new folder on a
subscribable store, subscribe to it.
(em_copy_folders): handle nonselectable folders specially.
2003-10-21 Jeffrey Stedfast <fejj@ximian.com>
* mail-component.c (drag_text_uri_list, folder_dragged_cb)
(drop_uid_list, drop_folder, import_message_rfc822)
(drop_message_rfc822, drop_text_uri_list, folder_receive_drop_cb):
New functions to handle drag & drop to/from the folder tree.
(impl_createControls): Setup drag & drop support.
* em-format.c (emf_multipart_mixed): Put an <hr> between parts of
a multipart.
2003-10-21 Not Zed <NotZed@Ximian.com>
* mail-component.c (emc_popup_properties): implement.
(emc_popup_properties_got_folder): builds dynamic
folder-properties dialogue.
(emc_popup_properties_response): set the properties on the folder
on an ok response.
(emc_popup_properties_free): free the properties working data.
* mail-folder-cache.c (unset_folder_info): unhook from the right
function for message_changed.
2003-10-20 Not Zed <NotZed@Ximian.com>
* mail-component.c (emc_popup_new_folder): pass the right object
to set_selected(). Fixes a new real bug. Undid reformatting.
2003-10-17 Jeffrey Stedfast <fejj@ximian.com>
* mail-component.c: General compile fixes.
(emc_popup_new_folder): Fixed to not shadow a parameter. Fixes a
real bug.
* mail-component.h: Added some prototypes.
2003-10-13 Not Zed <NotZed@Ximian.com>
* em-popup.c (em_popup_create_menu_once): only hookup target free
if we have a target set.
* mail-component.c (load_accounts): removed debug i accidentally
left in.
(emc_tree_right_click): handle right-click context menu, using an
EMPopup table.
(emc_popup_*): setup empty popup handlers.
2003-10-13 Not Zed <NotZed@Ximian.com>
* em-folder-selection.c (em_select_folder): asynchornous folder
selection call.
(emfs_folder_selected): callback for folder selected.
* em-folder-view.c (emfv_popup_move): implement.
(emfv_popup_copy): "
(emfv_popup_move_cb): async folder select callback to run it.
2003-10-10 Not Zed <NotZed@Ximian.com>
* mail-account-gui.c
(mail_account_gui_folder_selector_button_new): use
em_folder_selection_button.
(mail_account_gui_new): "
(folder_selected): "
* em-folder-selection-button.c: Make this use camel uri's rather
than camelfolders.
(set_selection): removed, redundant.
(impl_dispose): removed, not needed.
* em-folder-selection-button.h: change the selected signal not to
actually return the selection, which must get retrieved later.
* mail-component.c (em_uri_from_camel): create an evo mail uri
from a camel one.
(em_uri_to_camel): the reverse.
* mail-signature-editor.c (mail_signature_editor): up the version
of the gtkhtml editor.
2003-10-09 Not Zed <NotZed@Ximian.com>
* em-folder-selection-button.c (set_selection): always set
selected_folder, otherwise we don't unset it properly.
* em-folder-selection.c (em_folder_selection_run_dialog): fix a
small memleak.
(em_folder_selection_run_dialog_uri): do the same as run_dialog
but take, and return physical uri's.
* mail-component-factory.c (factory): removed some fixme's, and
re-hookedup the composer.
2003-10-09 Frederic Crozat <fcrozat@mandrakesoft.com>
* em-icon-stream.c (emis_sync_close): Use
gnome-thumbnail_scale_down_pixbuf if available, for better
performance.
2003-10-08 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-view.c: Add a hide_mask to the
create-rule-from-message bars so that we don't segfault when we
right click with a multi-selection.
2003-10-08 Chris Toshok <toshok@ximian.com>
* em-utils.c (em_utils_camel_address_to_destination): EDestination
=> EABDestination, and e_destination => eab_destination.
(reply_get_composer): same.
(post_reply_to_message): same.
* em-composer-utils.c (ask_confirm_for_unwanted_html_mail)
EDestination => EABDestination, and e_destination =>
eab_destination.
(composer_get_message):same.
2003-10-08 Not Zed <NotZed@Ximian.com>
* mail-component.c (mail_component_peek): setup vfolders once we
hve the component, since its setup will call mail_component_peek,
fun recursion.
2003-10-08 Not Zed <NotZed@Ximian.com>
* mail-component.c (setup_local_folder): removed.
(setup_local_store): setup various needed globals properly.
(setup_account_storages): renamed to load_accounts.
(go_online): turn on interactivity as well as onlinedness.
* GNOME_Evolution_Mail.server.in.in: point the preferences pages
to the right factory.
2003-10-07 Not Zed <NotZed@Ximian.com>
* mail-component.[ch]: Fix copyrights.
2003-10-06 Jeffrey Stedfast <fejj@ximian.com>
* mail-config-druid.c (identity_prepare): Fixed.
* mail-ops.c (fetch_mail_fetch): Always save the uid cache no
matter what.
2003-10-03 Frederic Crozat <fcrozat@mandrakesoft.com>
* mail-config-druid.c (identity_prepare), (config_wizard_new):
Convert real name to UTF-8 if needed.
2003-10-03 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-browser.c (emfb_set_folder): Disable the selection of
the first unread message for now. This is actually annoying the
fuck out of me, Radek, and a few other people.
2003-10-02 Not Zed <NotZed@Ximian.com>
* mail-component.c (add_storage): Add the storage to the hash
after we've initialised it.
(mail_component_evomail_uri_from_folder): hardcode "local" account
pseudo-id for local folders.
(mail_component_get_folder_from_evomail_uri): handle the "local"
account case.
2003-10-02 Not Zed <NotZed@Ximian.com>
* mail-component.c (setup_local_store): use mbox:/path rather than
mbox:///path - the mbox code is 'wrong', but this is easier to
fix. fixes local unread counts. maybe the provider url-compare
should address this too.
2003-10-02 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
* mail-config-druid.c: Fix for 40917 "Backspace shouldn't
highlight the whole remaining string in Setup Assistant".
(identity_changed): Removed repeated focussing per keystroke.
functions
(source_changed): Same.
(transport_changed): Here too.
(management_changed): And here.
(identity_prepare): Removed the initial highlighting for Full
Name, also the unneeded intial grab_focus.
2003-10-02 Not Zed <NotZed@Ximian.com>
* em-format-html.c (efh_format_timeout): zero out last_part if
we're clearing. Uh, this fixes, but shouldn't, part of #49034.
The problem is the 'last part' logic is based on the address,
which can quite easily be repeated for different messages.
* em-folder-view.c (emfv_list_message_selected): reverted jeff's
patch for #48618, use a much simpler method.
* em-message-browser.c (emmb_destroy): hook onto destroy handler,
we need to destroy the messagelist ourselves, since we dont attach
it to any parent window.
2003-10-01 Not Zed <NotZed@Ximian.com>
* em-format-html.c (efh_init): turn off blocking writes.
(efh_format_timeout): don't do a htmlbegin on the page yet, it'll
be handled by em-html-stream when it has data, to reduce flicker.
(efh_format_do): close the main gtkhtml stream as soon as we're
done writing the body. any sub-jobs should be using frames etc.
(efh_text_plain): dont write a table around the text, try to
reduce flickering. layout may be out now though.
* em-html-stream.c (emhs_sync_write): if we have no html_stream
yet, begin a new one.
2003-09-30 Rodney Dawes <dobey@ximian.com>
* em-format-html-print.c: Use "Sans Regular" instead of "Helvetica"
Fixes bug #47878
2003-09-30 Not Zed <NotZed@Ximian.com>
* em-format-html.c (efh_init): remove gconf stuff.
(em_format_html_set_xmailer_mask): new method to set the xmailer mask.
* em-folder-view.c (emfv_display_keys[]): Added charset key to
monitor/retrieve, and xmailer_mask.
(emfv_setting_notify): Monitor charset setting, pass onto the
formatter, as well as xmailer_mask.
* mail-preferences.c (mail_preferences_construct): use the new
charset key.
(mail_preferences_apply): use the new charset key.
* evolution-mail.schemas: Moved the mail/format/charset to
mail/display/charset. 1. it makes more sense, and 2. it makes
notification update easier in em-folder-view.c
* em-format.c (emf_init): remove the gconf charset stuff, for bug
#48791, and also actually fixes the fixme that jeff thought he
fixed.
(em_format_format_text): use default charset as fallback.
(em_format_set_default_charset): New method to set the default charset.
(gconf_charset_changed): removed.
2003-09-29 Jeffrey Stedfast <fejj@ximian.com>
* em-format.c (emf_init): Oops, put the arguments in the right order.
2003-09-29 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c: New member local_store in
MailComponentPrivate.
(impl_dispose): Unref.
(mail_component_load_storage_by_uri): Return the CamelStore.
(setup_local_folder): New.
(setup_local_store): New.
(mail_component_init): Call it.
(mail_component_peek_storage_set): New.
(mail_component_get_folder_from_evomail_uri): New.
(mail_component_evomail_uri_from_folder): New.
* em-folder-selection-button.c: New.
* em-folder-selection-button.h: New.
* em-folder-selection.c: New.
* em-folder-selection.h: New.
* em-marshal.list: Add NONE:POINTER.
2003-09-25 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (mail_account_gui_save): Allow any file: uri
to point to a sent or drafts folder.
2003-09-25 Rodney Dawes <dobey@ximian.com>
* mail-send-recv.c: Make the dialog more HIG-compliant by fixing
widget alignment/spacing issues, and removing separators
2003-09-24 Jeffrey Stedfast <fejj@ximian.com>
* mail-preferences.c (mail_preferences_construct): Same as below.
* mail-composer-prefs.c (mail_composer_prefs_construct): gconf can
return empty string if the charset has not been set, so if the
charset string is empty, default the charset to the user's locale
charset. Partial fix for bug #47638.
2003-09-23 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c (add_storage): Remove unused arg "uri".
(mail_component_add_store): Likewise.
(add_storage): Don't set the "Connecting..." node.
(mail_component_init): Set up local store at
~/.evolution/mail/local.
* evolution-mbox-upgrade.c (get_local_store): Remove a double
xmlFree() that was causing it to crash.
2003-09-23 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c (add_storage): Note the new store.
* mail-component-factory.c: Don't include "mail-callbacks.h"
anymore.
* em-format-html.c (em_format_html_get_type): Get the base
directory with mail_component_peek_base_directory().
* em-utils.c (filter_editor_response): Likewise.
(em_utils_edit_filters): Likewise.
* em-folder-browser.c (emfb_init): Get the search context through
mail_component_peek_search_context().
2003-09-23 Jeffrey Stedfast <fejj@ximian.com>
* evolution-mbox-upgrade.c (get_local_store): Don't xmlFree (name)
until after we've g_strdup'd it.
(em_migrate_dir): If the metadata file doesn't exist, don't even
bother trying subfolers (the shell just ignores them so we should
too).
2003-09-23 Jeffrey Stedfast <fejj@ximian.com>
Fix for bug #48791 (and also fixes a FIXME)
* em-format.c (emf_init): Setup a gconf listener for changes to
the charset setting.
(gconf_charset_changed): Update the cached gconf charset value.
(emf_finalise): Free the EMFormatPrivate data, unref the gconf
client, disconnect the charset notify id, and free the cached
gconf charset value.
(em_format_format_text): Use the cached gconf charset value.
2003-09-22 Not Zed <NotZed@Ximian.com>
** See bug #32996
* mail-folder-cache.c (real_flush_updates): don't just pass TRUE
to the 'can work offline' parameter of new shell folder.
** See bug #39410
* mail-ops.c (prep_offline_do): sync all messages, not just
unread or flagged ones.
2003-09-22 Not Zed <NotZed@Ximian.com>
* em-popup.c (emp_uri_popup_link_copy): removed, moved to
em-folder-view, for now, it has access to an invisible.
* em-folder-view.c (emfv_setting_notify): honour the load_http
setting, at least the all setting.
(emfv_format_popup_event): setup the popup menu item for copy link
location here.
2003-09-22 Jeffrey Stedfast <fejj@ximian.com>
* mail-preferences.c (mail_preferences_construct): Connect to
"value-changed" rather than "changed" for spin buttons.
2003-09-21 Not Zed <NotZed@Ximian.com>
* mail-session.c (ms_thread_msg_new): implement, we hook into the
mail progress reporting stuff by overriding the CamelOperation
member with one from a dummy mail_msg.
(ms_thread_msg_free): handle freeing.
* mail-mt.c (mail_msg_free): mute the camel-operaiton when we free
it so we no longer get updates.
2003-09-19 Jeffrey Stedfast <fejj@ximian.com>
* em-message-browser.c (emmb_set_message): Set the window title to
be that of the message subject. Fixes bug #48617.
2003-09-19 Jeffrey Stedfast <fejj@ximian.com>
Fix for bug #48618.
* em-folder-view.c (emfv_list_message_selected): See if we have
already loaded the message uid that has just been selected, if so
- don't bother re-loading it.
(emfv_list_done_message_selected): Update loaded_uid and
loading_uid.
2003-09-18 Radek Doulik <rodo@ximian.com>
* em-format-html.c (efh_init): use gtkhtml's blocking
2003-09-18 Jeffrey Stedfast <fejj@ximian.com>
* em-inline-filter.c: updated for CamelTransferEncoding namespace
changes
* em-inline-filter.h: updated for CamelTransferEncoding namespace
changes
* mail-ops.c: updated for CamelTransferEncoding namespace changes
2003-09-18 Jeffrey Stedfast <fejj@ximian.com>
* component-factory.c: updated for camel namespace changes
* em-folder-view.c: updated for camel namespace changes
* em-format-html-display.c: updated for camel namespace changes
* em-format-html-quote.c: updated for camel namespace changes
* em-format.c: updated for camel namespace changes
* em-popup.c: updated for camel namespace changes
* em-utils.c: updated for camel namespace changes
* mail-autofilter.c: updated for camel namespace changes
* mail-ops.c: updated for camel namespace changes
* mail-session.c: updated for camel namespace changes
* message-list.c: updated for camel namespace changes
* message-tag-followup.c: updated for camel namespace changes
* importers/evolution-mbox-importer.c: updated for camel namespace
changes
2003-09-18 Jeffrey Stedfast <fejj@ximian.com>
* em-popup.c (emp_standard_menu_factory): Don't forget to
initialise/increment 'i' when using it as an object id in the
for-loop.
* em-format.c (em_format_format_text): Initialise charset to NULL
or it may be used uninitialised. Also include
gnome-vfs-mime-handlers.h for gnome_vfs_mime_type_get_description().
* Makefile.am: Added $(MARSHALL_GENERATED) to $(BUILT_SOURCES) so
that em-marshal.[c,h] were autogenerated.
2003-09-17 Not Zed <NotZed@Ximian.com>
* folder-browser.c, folder-browser.h, folder-browser-ui.c
folder-browser-ui.h, mail-callbacks.c, mail-callbacks.h
mail-display.c, mail-display.h, mail-display-stream.c
mail-display-stream.h, mail-format.c, mail-format.h
mail-identify.c, mail-search.c, mail-search.h message-browser.c,
message-browser.h, subscribe-dialog.c subscribe-dialog.h,
mail-font-prefs.c, mail-font-prefs.h: cvs removed.
* Makefile.am: Removed mail-font-prefs.[ch], hasn't been built for
ages.
* em-*.c: killed a bunch of printfs.
* em-format-html-display.c (efhd_html_button_press_event): update
for html object api chagnes.
** Merge in mail-refactor-2 branch.
2003-09-17 Jeffrey Stedfast <fejj@ximian.com>
* evolution-mbox-upgrade.c: New source file to migrate from the
old mbox structure to the new mbox structure.
2003-09-08 Ettore Perazzoli <ettore@ximian.com>
* mail-folder-cache.c (mail_note_store): Allow NULL storage in
precondition.
* mail-component.c (mail_component_init): Remove debugging
message.
2003-08-22 Not Zed <NotZed@Ximian.com>
* mail-format.c (write_date): translate the local time format.
2003-08-20 David Woodhouse <dwmw2@infradead.org>
* mail-format.c (write_date): Use e_utf8_strftime() to generate
localised time; avoid gratuitous extra translation and array of
day names, and the autoconf magic which made Not Zed dislike the
inclusion of the timezone name.
2003-08-18 Ettore Perazzoli <ettore@ximian.com>
* GNOME_Evolution_Mail.server.in.in: Rename
GNOME_Evolution_Mail_Component2 to
GNOME_Evolution_Mail_Component_2 and GNOME_Evolution_Mail_Factory2
to GNOME_Evolution_Mail_Factory_2.
* mail-component-factory.c: Update accordingly.
2003-08-18 Jeffrey Stedfast <fejj@ximian.com>
* mail-session.c (main_get_filter_driver): Removed the
new-mail-notification mess.
* mail-folder-cache.c (notify_idle_cb): New idle callback to alert
the user about new mail.
(notify_type_changed): New function to intercept user changes to
his/her notification settings changes.
(real_flush_updates): Initialise new mail notification if not yet
initialised and setup an idle callback if none is already set.
(update_1folder): Now takes an additional argument `new' which
states whether or not the fodler got any new mail so that we may
handle notify the user (if needed).
(folder_changed): Pass in the number of new messages received.
2003-08-19 Not Zed <NotZed@Ximian.com>
* mail-callbacks.c (mail_generate_reply): Added a comment for
translators.
2003-08-19 David Woodhouse <dwmw2@infradead.org>
* mail-callbacks.c (mail_generate_reply): Add a timezone offset to
the attribution string.
2003-08-19 Not Zed <NotZed@Ximian.com>
* mail-format.c (write_date): Added translation for day and
localtime strings. Also removed the tz_zone stuff, and just use
'localtime' always.
2003-08-15 David Woodhouse <dwmw2@infradead.org>
* mail-format.c (write_date): Show date in localtime too.
2003-08-19 Harry Lu <harry.lu@sun.com>
** For #45348
* mail-display.c (mail_display_render): Change "%P" to "%p" so
that strftime() can work under solaris.
2003-08-14 Jeffrey Stedfast <fejj@ximian.com>
* mail-ops.c (mail_send_message): Don't abort at the first failure
after sending (filtering, appending to Sent, syncing). Instead,
keep a running tab of exceptions and then set a culmulative
exception at the end to report to our caller. Also, if we fail to
append to the account Sent folder, try again with the local Sent
folder. Fixes bug #46512.
2003-08-13 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
* e-searching-tokenizer.c (searcher_next_token): Fix for 45818 (
i18n mail messages search only produces '[?]'). Now multibyte
character selection works correctly. But due to associated gtkhtml
bug, the find button functionallity for multibyte characters is
broken.
2003-08-12 Jeffrey Stedfast <fejj@ximian.com>
* mail-tools.h: Removed unused function prototype.
2003-08-11 Jeffrey Stedfast <fejj@ximian.com>
* mail-session.c (remove_timeout): Removed.
(register_timeout): Removed.
2003-08-09 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c (storage_go_online): Pass NULL for the
operation pointer to mail_note_store(), to sync with Michael's
changes.
2003-08-05 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (handle_multipart_encrypted): Updated for
CamelMimePart::content_type changes.
* mail-ops.c (save_part_save): Use
camel_data_wrapper_decode_to_stream() here.
* mail-display.c (drag_data_get_cb): Updated for
CamelMimePart::content_type changes.
(do_attachment_header): Same.
2003-07-31 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (mail_format_raw_message): Updated to pass FALSE
as the 'decode' param to
mail_format_data_wrapper_write_to_stream().
(mail_format_data_wrapper_write_to_stream): Now takes a boolean
arg telling whether to decode or not. Also reworked the charset
logic now that camel doesn't handle this for us any longer.
(mail_format_get_data_wrapper_text): Updated.
(handle_text_plain): Same.
(handle_text_enriched): Here too.
* mail-display.c (do_attachment_header): Call decode_to_stream
here instead of write_to_stream.
(do_external_viewer): Same.
(on_url_requested): Same. Also updated for
mail_format_data_wrapper_write_to_stream().
(try_part_urls): Call decode_to_stream.
(drag_data_get_cb): Same.
2003-08-05 Not Zed <NotZed@Ximian.com>
** See bug #32732
* message-list.c (mail_regen_list): use thread_new.
* mail-local.c (reconfigure_response): use thread_new.
* mail-display.c (stream_write_or_redisplay_when_loaded): use
thread_new.
* mail-config.c (mail_config_check_service): use thread_new rather
than queue.
* mail-callbacks.c (view_msg): change to use mail_get_messages(),
fixes FIXME.
(do_view_messages): handle get_messages callback.
(do_view_message): removed.
* mail-ops.c (mail_get_folderinfo): Use a new thread thread
semantic.
(mail_save_part): "
(mail_store_set_offline): "
(mail_sync_folder): use queued_slow thread queue.
(mail_expunge_folder): "
(mail_empty_trash): "
** See bug #47224. Hook onto clicked rather than button_pressed,
so that dnd works.
* mail-display.c (inline_toggle): toggle a part inline.
(button_press): change back to only handle button clicked events,
renamed to inline_button_clicked.
(do_attachment_header): hook onto clicked rather than
button_press_event, and move key_press_event to
inline_button_pressed.
(do_signature): Same.
(inline_button_pressed): handle inline button key press event
explicitly.
2003-07-29 Not Zed <NotZed@Ximian.com>
* mail-folder-cache.c (mail_note_store): add a CamelOperation for
overriding status handler.
* mail-send-recv.c (receive_update_got_store): Pass our own cancel
handle to get_folderinfo and mail_note_store.
(mail_send_receive, mail_receive_uri): Same for get_store.
* mail-ops.c (mail_get_store, mail_get_folderinfo): Add a
CamelOperation argument, for overriding the status handler. Fixed
most calles to pass NULL to use the default.
2003-09-15 Not Zed <NotZed@Ximian.com>
* em-folder-browser.c (emfb_activate): remove warning about folder
not being loaded yet - it basically never is.
* em-popup.c (emp_standard_menu_factory): dont setup any global
select menu's yet. they're all handled by folderview atm.
2003-09-11 Not Zed <NotZed@Ximian.com>
* em-format-html.c (efh_finalise, efh_format_timeout): Use a
proper hash free func, otherwise it dont work.
2003-09-11 Not Zed <NotZed@Ximian.com>
* em-inline-filter.[ch]: A new class which implements an inline
snooper via a mime filter, so it is fully streamable. contents
merely passes through the filter.
* em-format-html.c (efh_finalise): free text substitute parts
table.
(efh_text_plain): transform a text part into a multipart, scanning
for inline data. Keep the multipart around for redraws.
(efh_format_timeout): clear the text substitute parts table.
2003-09-10 Not Zed <NotZed@Ximian.com>
* em-format-html-display.c (efhd_init): hook onto realise so we
get the real theme-applied style.
(efhd_gtkhtml_realise): get the theme data for colour defaults.
Tweak the colour selection to make it work better with dark
themes.
* em-format-quote.c (emfq_format_source): we need to implement
this.
(emfq_format_error): we need not to call parent, it doesn't
implement it.
* message-list.c (message_list_select_uid): don't emit
changedhere, let it go through the table cursor change.
* em-folder-browser.c (em_folder_browser_show_preview): use
folderview.preview_active for this state.
(em_folder_browser_show_preview): clear the current message when
we turn off the message view, and load the current one when turn it on.
* em-folder-view.c (emfv_destroy): zero out preview + list.
(emfv_list_message_selected): check preview_active before doing
anything.
(emfv_edit_cut):
(emfv_edit_copy): only run if preview active.
* em-format-html.c (efh_format_do): output the proper html
headers, etc.
2003-09-10 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (mail_account_gui_save): Allow the user to
select any fodler for his/her Drafts and Sent folders. Fixes bug
#45412.
2003-09-09 Not Zed <NotZed@Ximian.com>
* em-utils.c (forward_non_attached): implement forward quoted.
* em-format-quote.[ch]: New class, em-format-html-quote wont cut
it. Sigh.
* em-format-html-quote.c (efhq_base_init): move type init stuff
here.
(efhq_complete): remove, this is a signal.
(efhq_multipart_related): we need to override the base class, we
don't want to output any attachment html.
* em-format-html-print.c (efhp_base_init): move builtin type init
to here.
* em-format-html.c (efh_init): get xmailer mask from gconf (sigh).
(efh_format_header): inmplement most of xmailer mask thing.
rupert icon not done yet, probably needs to be done as part of
em-format-html-display, sigh.
(type_builtin_table[]): add image/svg to supported image formats.
(efhd_base_init): move type init to here.
(efh_text_enriched): write to the filtered_stream, not stream.
* em-format.c (em_format_format_text): oops, actually use any
supplied charset.
(emf_base_init): move hashtable init into base_init, so we get a
new copy for each derived class too.
* mail-send-recv.c (build_dialogue): use an eclippedlabel for
status. Fixed all uses.
2003-09-08 Not Zed <NotZed@Ximian.com>
* em-format-html.h (EMFormatHTML): added a simple_headers option,
only output headers in basic format. Added hide_headers option,
to disable all header output.
* em-format-html-quote.c (efhq_format_message): blockquote the
contnet, thats how you cite it!
(efhq_init): turn on simple headers for html output.
(efhq_format_message): output headers and part directly, bypassing
parent format_message.
(efhq_format_message): implement hide_headers.
* em-format-html.c (efh_busy): implement busy.
(efh_format_message): implement simple_headers option.
(efh_format_text_header): implement simple_headers option.
(efh_format_message): move the header formatting stuff into
exported em_format_html_format_headers.
(efh_format_message): only output headers if not hidden.
* em-format.c (emf_busy): base implementation of a new virtual
method, returns TRUE if the object is still busy
rendering/downloading stuff.
* em-utils.c (em_utils_message_to_html): renamed from
em_utils_quote_message. Also make sure the html conversion is
complete before getting the data.
(em_utils_part_to_html): similar, but for parts.
(composer_set_body): put in David Woodhouse's timezone in
attribution patch.
(composer_set_body): we want to quote the part (content), we don't
want message headers.
(em_utils_message_to_html): add a 'show headers' argument.
* folder-browser-factory.c (control_activate): removed.
(control_deactivate): removed.
* mail-identify.c:
* folder-browser.[ch], folder-browser-ui.[ch]:
* mail-callbacks.[ch], mail-search.[ch]:
* mail-display.[ch], mail-format.[ch], mail-display-stream.[ch]:
* message-browser.[ch]: Removed, fixed all users.
* component-factory.c (factory): change callbacks to em_utils
ones.
(configure_folder_popup): comment out some of the reconfigure
stuff. Wont have it in 1.6?
(handle_external_uri_cb): use em_utils stuff.
(user_create_new_item_cb): "
(owner_unset_cb): "
* em-composer-utils.c (composer_send_cb): rename to
em_utils_composer_send_cb, and export, sigh, needed for factory.
(composer_save_draft_cb): Same.
2003-09-05 Not Zed <NotZed@Ximian.com>
* em-format.c (type_builtin_table[]): Add a fallback multipart/*
for other types (e.g. multipart/report)
(em_format_fallback_handler): fix some bad logic.
* em-folder-browser.c: track the pane size if the user changes it.
(emfb_set_folder): Added a bit of a mess that will select the
first unread message the first time you visit a folder.
(emfb_destroy): impelment. clear up outstanding signal handlers.
(emfb_list_built): Select the first unread message. this isn't
entirely reliable as yet, and not configurable at all.
* em-format-html-display.c (em_format_html_display_set_animate)
(em_format_html_display_set_caret_mode): guess? :)
(efhd_attachment_button): dont desensitise the button, just dont
hook onto it, otherwise it looks fugly.
* em-folder-view.c (emfv_list_done_message_selected): dont lookup
gconf values every time. use g_timeout_add rather than
gtk_timeout, remove fixme's.
(emfv_setting_notify): listner for gconf changes, reflect
internally.
(emfv_setting_setup): setup listner for gconf, and read initial
settings.
(emfv_activate): use local copy of settings rather than snooping
gconf.
(emfv_caret_mode): propagate caret-mode to display
* em-format-html-quote.c (efhq_format_message): remove gconf
stuff, our parent already has citation colour.
* em-format-html.c (efh_format_timeout): remove gconf stuff.
(em_format_html_set_load_http, em_format_html_set_mark_citations):
set options on formatter, re-renders if required.
(type_builtin_table[]): text/* should go to text/plain, not
text/enriched.
2003-09-04 Not Zed <NotZed@Ximian.com>
* em-utils.c (confirm_expunge): rename it to emu_confirm_expunge
and remove leading whitespace before function.
(em_utils_expunge_folder): we want to expunge the folder, not
empty the trash. Jeff didn't even run this once ...
* em-popup.c: Lots of new features, 'global' popup menu's on a
per-selection type, via factories, popup selections (targets), a
standard factory for many menu items.
(emp_apps_open_in): duh, fix uri using logic
(emp_standard_menu_factory): only add apps to app list if
!requires_terminal.
* em-format-html-display.c (efhd_open_in, efhd_popup_free_items):
moved to em-popup.c
(efhd_popup_save_attachment, efhd_popup_save_message)
(efhd_popup_reply_sender, efhd_popup_reply_list)
(efhd_popup_reply_all, efhd_popup_forward): (re)moved to em-popup.c
(efhd_attachment_popup): use enew popu stuff.
(efhd_attachment_button): Scale the icons for mime-type icons.
* em-folder-view.c (em_folder_view_disable_mask): removed
... moved to em-popup.
(em_folder_view_get_popup_target): new method, get the selection
target for the folder view.
(emfv_html_popup_saveas, emfv_html_popup_link_open)
(emfv_html_popup_link_copy, emfv_html_popup_address_send)
(emfv_html_popup_address_add, emfv_format_popup_free_items): moved
to em-popup.c
(emfv_format_popup_event): use new popup stuff.
(emfv_popup): use new popup stuff, but still just use all local
menu's.
2003-09-03 Not Zed <NotZed@Ximian.com>
* em-folder-view.c (emfv_format_popup_event): implement, a popup
menu for right-clicking on links and images.
(emfv_html_popup_link_copy): implement.
(emfv_init): setup an invisible for selection stuff.
(emfv_destroy): free invisible
* em-utils.c (em_utils_get_proxy_uri): utility to get the current
system proxy setting.
(emu_set_proxy): implementation.
* em-camel-stream.[ch]: removed.
* em-format-html.c (efh_url_requested, efh_format_timeout): use
em_html_stream rather than em_camel_stream.
(emfh_gethttp): set the system proxy on the new stream.
(emfh_multipart_related_check): use puri rather than purin inside
the loop - duh.
(emfh_multipart_related_check): removed 'unrelated part' warning,
they can be (and normally are) added by the callbacks.
* em-format-html.h (EMFormatHTMLJob): s/estream/stream/
* em-html-stream.[ch]: New subclass of emsyncstream, replacement
for em-camel-stream.
2003-09-04 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-browser.c (emfb_folder_expunge): Call
em_utils_expunge_folder instead.
* em-utils.c (em_utils_expunge_folder): New function.
(confirm_expunge): Make private.
2003-09-04 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-browser.c (emfb_folder_expunge): Confirm hat the user
wants to expunge.
(emfb_empty_trash): Implemented.
* em-utils.c (em_utils_prompt_user): Make public (used to be
e_question).
(em_utils_confirm_expunge): New function to confirm that the user
wants to expunge.
(em_utils_empty_trash): New function to empty all Trash folders.
* em-composer-utils.c: Get rid of e_question and use em-utils'
em_utils_prompt_user() function instead.
* em-format-html-quote.[c,h]: New formatter for quoting
replies/forwards/etc.
* em-utils.c (em_utils_quote_message): New function.
(composer_set_body): Use the new em_utils_quote_message()
function.
(em_utils_temp_save_part): Only g_free mfilename if it was
malloc'd.
* mail-tools.c (mail_tool_quote_message): Removed.
(mail_tool_forward_message): Removed.
2003-09-03 Jeffrey Stedfast <fejj@ximian.com>
* em-format.c (em_format_class_remove_handler): New function to
remove a mime-type handler from a class.
* em-format-html.c (efh_init): Set the CITATION bit for the
default html flags.
* em-format-html-display.c: Fixed some compiler warnings by adding
appropriate includes.
(efhd_multipart_signed): Don't write "inlined signature...".
2003-09-03 Not Zed <NotZed@Ximian.com>
* em-icon-stream.[ch]: New subclass of emsyncstream, write camel
stream one side, creates an icon on the other.
* em-sync-stream.[ch]: New file, an abstract class for creating
write-any-thread-act-gui-thread stuff. 'em-camel-stream' will
subclass this.
* em-format-html-display.c (efhd_attachment_button): setup a job
to write out an icon if the type is an image type, otherwise try
and get the icon directly. no caching yet. the system icons
aren't scaled properly either.
(efhd_write_icon_job): async job to write out image content.
2003-09-02 Not Zed <NotZed@Ximian.com>
* em-format-html.c (emfh_new_job): renamed to
em_format_html_job_new and made public.
(emfh_queue_job): renamed to em_format_html_job_queue, and made
public.
* em-format-html.h: Made EMFormatHTMLJob a public structure.
2003-09-02 Not Zed <NotZed@Ximian.com>
* em-folder-view.h (struct _EMFolderView): track the uicomponent
while we're activated.
* em-message-browser.c (em_message_browser_window_new): kill
warning.
(emmb_init, emmb_finalise): kill printf
* em-format-html.c (efh_format_header): Converted code from head
from David Woodhouse <dwmw2@infradead.org>'s timezone display
patch.
(efh_format_text_header): support new flag, HEADER_HTML - header
alredy in html format.
* em-format-html-print.c (em_format_html_print_print): only ref
print_config if != NULL.
* em-folder-browser.c (emfb_tree_key_press): handle
space/backspace in messagelist to scroll the message view.
(emfb_create_view_menus): setup view menu's, this should probably
live in message-list.
(emfb_init): setup the folderbrowser enable map into the list.
(emfb_enable_map): folder browser enable map
* em-utils.c (em_utils_adjustment_page): new helper to scroll an
adjustment up/down 1 page.
* em-folder-view.c (emfv_list_double_click): implement, open
window.
(emfv_list_key_press): implement keybinding overrides. Enhance
delete key to undelete if everything is already deleted.
(emfv_build_enable_mask): separate out enable mask creation.
(emfv_popup): use above to get mask.
(emfv_enable_menus): enable/sensitize menus, use the same disable
mask system as used for the popups.
(emfv_destroy): change to use g_source_remove on seen_id.
(emfv_finalise): free up folders, clean up async event thing.
(emfv_init): setup an async event handler
(emfv_set_folder): handle hook/unhook of folder_changed events.
(emfv_folder_changed): proxy folder changed to main thread, ignore
the details of what changed.
(emfv_gui_folder_changed): update the menu's to reflect any folder
changes.
(emfv_build_disable_mask): added CAN_THREADED.
(em_folder_view_disable_mask): make public (rename from
emfv_build_disable_mask).
(emfv_enable_menus): changed to work on a list of arrays of
enablers, so they can be subclassed.
(emfv_init): add our enable map to the ui.
(em_folder_view_disable_mask): added support for can hidden (there
are hidden messages).
2003-09-01 Not Zed <NotZed@Ximian.com>
* em-popup.c: New, simple menu-merging popup menu implementation.
NOTE: should be temporary, but needs something that has similar
merging facilities.
* em-folder-view.c (emfv_popup*): added popup callbacks, implement
a popup menu, using em_popup.
(emfv_message_*): replaced a whole bunch of one-line, or simple
functions with macro's to map to the popup implementation.
(emfv_tools_vfolder*, emfv_tools_filter*): map to popup
equivalents.
(emfv_init): drop printf
* em-format-html-display.c (efhd_attachment_popup): use the
em_popup stuff to build a dynamic menu.
* em-utils.c (em_utils_temp_save_part): change assignment order ot
kill warning.
(emu_get_save_filesel): handle null/empty name by appending / to
the filename.
2003-08-30 Not Zed <NotZed@Ximian.com>
* mail-search.glade: forgot to add this yesterday.
* em-utils.h: don't include stuff we dont need to.
* em-folder-view.c (emfv_message_forward): just call
em_utils_forward_messages.
* em-format-html-display.c (em_format_html_display_search):
removed unused.
(efhd_drag_data_get): cleanup, use em_utils_temp_save_part.
(efhd_attachment_popup): quick hack, setup a bunch more menu
items, for forwarding inline messages, hook up saving parts, and
messages, and hook up the 'open in' menu.
(efhd_open_in): implement.
* em-utils.c (em_utils_save_message): Renamed to
em_utils_save_part.
(em_utils_filesel_prompt): removed, it just makes things more
complex than having a single response handler.
(em_utils_save_part): move dialog stuff here, it also creates a
name based on the type of part its given.
(emu_get_save_filesel): new method to create a fileselector with
standard options.
(emu_save_part_response): handle file selector response for save
part.
(can_save): renamed to emu_can_save
(em_utils_save_messages): use get_save_filesel
(emu_can_save): handle the path="" case
(em_utils_save_part): Add a prompt argument.
(filesel_ok_cb): removed.
(emu_update_save_path): update the gconf save_dir setting.
(em_utils_forward_messages): helper to forward using default
style.
(forward_non_attached): remove uids argument.
(em_utils_forward_message): helper to forward a message using the
default forward style.
(forward_non_attached): removed folder argument.
(em_utils_temp_save_part): helper to save a part to a temporary
file, e.g. for dnd, app launch, etc.
2003-08-29 Not Zed <NotZed@Ximian.com>
* em-folder-view.c: set 'outgoing' properly.
* em-folder-browser.c (emfb_tools_subscriptions): enforce a single
instance of the subscribe editor.
(emfb_subscribe_editor_destroy): clear subscribe editor handle.
2003-08-29 Not Zed <NotZed@Ximian.com>
* em-camel-stream.c (em_camel_stream_new): Added some optional
logging code.
(stream_close): and here.
(stream_write): and here.
* em-folder-browser.c (emfb_init): remove fixme about search bar,
its there now. also fixme's about dnd/selection, they are handled
in lower-level widgets.
(em_folder_browser_show_preview): dont exit if show preview set,
but only if it hasn't changed.
(emfb_view_hide_selected, emfb_view_show_all)
(emfb_view_hide_read): removed some spurious printfs.
* Makefile.am (glade_DATA): Added mail-search.glade. FIXME:
should all glade files be merged into 1?
* em-format-html-display.c (efhd_format_clone): remove search
match count code from here - wont be finished rendering at this
point anyway.
(em_format_html_display_search): new api for running an
interactive search popup.
(efhd_update_matches, efhd_update_search)
(efhd_search_entry_activate, efhd_search_case_toggled)
(efhd_search_response): helpers/callbacks for search popup.
(efhd_class_init): hook into complete signal on EMFormat.
(efhd_complete): complete rendering handler, update match count.
* em-folder-view.c: removed fixme about api's - yes, do need two
set_folder api's.
(emfv_edit_cut, emfv_edit_copy): removed printfs
(emfv_edit_paste): removed commented call to html_paste, we never
want to do that.
2003-08-29 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-view.c (emfv_message_mark_unread): If there is a
mark-as-read timeout handler registered, unregister it here.
(emfv_tools_filter_mlist): Implemented.
(emfv_tools_filter_recipient): Implemented.
(emfv_tools_filter_sender): Implemented.
(emfv_tools_filter_subject): Implemented.
(emfv_tools_vfolder_mlist): Implemented.
(emfv_tools_vfolder_recipient): Implemented.
(emfv_tools_vfolder_sender): Implemented.
(emfv_tools_vfolder_subject): Implemented.
2003-08-28 Not Zed <NotZed@Ximian.com>
* em-folder-browser.c (emfb_search_menu_activated)
(emfb_search_config_search, emfb_search_search_activated)
(emfb_search__query_changed): Implement search-bar callbacks.
(emfb_init): setup search bar.
2003-08-28 Not Zed <NotZed@Ximian.com>
* em-folder-view.c (emfv_message_reply): common reply code entry
point, also implement simple reply-to-highlighted text (currently
disabled).
(emfv_activate): disable resend message on non-sent folders.
(emfv_message_reply_all, emfv_message_reply_list)
(emfv_message_reply_sender): use message_reply for common code.
(em_folder_view_open_selected): in drafts or outbox, edit the
message instead.
(emfv_activate): force a sync on deactivate.
* em-utils.c (em_utils_selection_get_mailbox): get mailbox
(message/rfc822?) selection data.
(em_utils_read_messages_from_stream): helper to move stuff from a
mbox stream to a folder.
(em_utils_folder_is_drafts, em_utils_folder_is_sent)
(em_utils_folder_is_outbox): from folder browser helpers for
customising the user experience.
* message-list.c (message_list_construct): hook onto dnd stufd.
(ml_tree_drag_data_get): implement drag sending.
(ml_tree_drag_data_received): implement drag recieving.
* em-format-html-display.c (efhd_drag_data_get): implemented.
(efhd_drag_data_delete): implemented.
(efhd_attachment_button): setup dnd callbacks.
2003-08-28 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-view.c (emfv_destroy): override the destroy method for
GtkObject - unregister the mark-as-seen timeout if one is
currently registered.
(emfv_list_done_message_selected): Add the mark-as-seen timeout
functionality here.
(emfv_format_link_clicked): Implemented.
2003-08-27 Jeffrey Stedfast <fejj@ximian.com>
* em-utils.c (get_reply_list): Implemented.
2003-08-27 Not Zed <NotZed@Ximian.com>
* em-message-browser.c (emmb_activate): disable Edit->Paste menu
always.
* em-folder-browser.c (emfb_edit_paste): do a message-list paste,
not a html one.
(emfb_edit_cut, emfb_edit_copy, emfb_edit_paste): Moved to folder-view.
* message-list.c (message_list_paste): trigger a paste action.
(message_list_set_folder): added a uri argument, and save it
internally, fixed all callers.
(message_list_finalise): free the folder uri.
* em-utils.c (em_utils_selection_set_mailbox): New helper to set
the current selection as text in a berkely mailbox format.
(em_utils_write_messages): helper to write stuff to a stream in
mbox format.
2003-08-27 Not Zed <NotZed@Ximian.com>
* message-list.c (on_selection_changed_cmd): own/deown the primary
selection when it changes.
(message_list_init): init private data and invisible for
selection.
(message_list_destroy): free invisible.
(message_list_finalise): free private data.
(get_selected_cb): removed.
(message_list_copy): new method to do copy and cut. cut/copy to
the clipboard.
(ml_selection_clear_event): clear the right selection when
requested.
(message_list_has_primary_selection): helper to find out if the
message-list has the selection. is there a gtk way for this?
2003-08-26 Not Zed <NotZed@Ximian.com>
* mail-local.c (mlf_meta_set, mlf_meta_get): proxy meta-data stuff
to subservient folder.
2003-08-23 Not Zed <NotZed@Ximian.com>
* em-folder-view.c (emfv_init): init preview here always.
2003-08-25 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-view.c (em_folder_view_print): Use
e_dialog_set_transient_for().
(emfv_message_delete): Fixed a FIXME.
* em-folder-browser.c (emfb_edit_cut): Implemented.
(emfb_edit_copy): Implemented.
(emfb_edit_paste): Implemented.
* em-format-html-display.c (em_format_html_display_cut): New function.
(em_format_html_display_copy): New.
(em_format_html_display_paste): New.
2003-08-25 Jeffrey Stedfast <fejj@ximian.com>
* em-utils.c (em_utils_flag_for_followup): Use
e_dialog_set_transient_for().
(em_utils_filesel_prompt): Same.
(post_reply_to_message): Here too.
(em_utils_edit_filters): Same.
(create_new_composer): And here.
(em_utils_compose_new_message_with_mailto): Here too.
(em_utils_post_to_url): "
(redirect_get_composer): Same.
(reply_get_composer): Again...
* em-folder-browser.c (emfb_tools_filters): Implemented.
* em-utils.c (em_utils_edit_filters): New function to open the
filter editor dialog.
2003-08-22 Jeffrey Stedfast <fejj@ximian.com>
* em-utils.c (em_utils_flag_for_followup): Implemented.
(em_utils_flag_for_followup_clear): Implemented.
(em_utils_flag_for_followup_completed): Implemented.
* em-folder-view.c (emfv_message_followup_flag): Implemented.
(emfv_message_followup_clear): Implemented.
(emfv_message_followup_completed): Implemented.
2003-08-22 Not Zed <NotZed@Ximian.com>
* em-camel-stream.c (em_camel_stream_new): now take the gtkhtml
too, and hook onto it's destroy so we don't try writing anymore
after its gone.
(stream_write, stream_flush, stream_close, emcs_gui_received):
NOOP if the gtkhtml has been destroyed.
(emcs_gtkhtml_destroy): null out the stream when the gtkhtml gets
destroyed, it is no longer valid.
(emcs_gui_received): dont try to soak all outstanding events, it
always runs synchronous anyway, just get one and exit.
* em-format-html.c (efh_gtkhtml_destroy): if the gtkhtml gets
destroyed, abort any pending timeouts/processing.
(efh_format_source): fixed implementation to write out all
headers.
(efh_multipart_related, emfh_multipart_related_check): separate
checking for unused parts into a separate job, which is run after
previous ones are executed. keep track of visibility tree level
in job, etc.
2003-08-22 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-browser.c (emfb_mail_compose): Implemented.
(emfb_mail_post): Implemented.
* em-utils.c (em_utils_compose_new_message): New function.
(em_utils_compose_new_message_with_mailto): New.
(em_utils_post_to_url): New.
2003-08-21 Not Zed <NotZed@Ximian.com>
* subscribe-dialog.glade: removed the text in the progress thing.
It never showed up anyway and caused weird resizing stuff when the
progress bar was active.
* em-subscribe-editor.c: Found the correct version of the new
subscribe code (on branch, duh!), and integrated it.
(sub_selection_changed): Sensitise buttons based on selection.
* em-format-html.c (efh_text_plain, efh_text_enriched)
(efh_write_text_html): Use format_text for text output.
(efh_write_image): use explicit image writer.
(emfh_gethttp): added some progress stuff.
(efh_format_do): maintain the accessible uri tree during jobs.
(efh_url_requested): store the current uri accessibility tree node
in the job, so it can be properly set for sub-jobs.
(emh_multipart_related): moved here, can't use super-class version
as it doesn't know about async jobs.
(type_buildin_table[]): Added image/jpg and image/jpeg for the
brokenmailers out there and to reduce the whinge.
* em-format.c (em_format_format_content): For text parts, perform
default charset/charset snooping/decoding. No longer closes the
stream once complete.
(emf_write_related): close stream ourselves.
2003-08-21 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-view.c (emfv_message_forward): Implemented.
(emfv_message_forward_attached): Implemented.
(emfv_message_forward_inline): Implemented.
(emfv_message_forward_quoted): Implemented.
(emfv_message_redirect): Implemented.
(emfv_message_post_reply): Implemented.
(emfv_message_reply_all): Implemented.
(emfv_message_reply_list): Implemented.
(emfv_message_reply_sender): Implemented.
(emfv_message_resend): Implemented.
(emfv_message_saveas): Implemented.
* em-composer-utils.c: New source file containing all the composer
send/draft callback mess.
* em-utils.c (em_utils_uids_copy): New convenience function to
copy a list of uids.
(em_utils_uids_free): New convenience function to free a list of
uids.
(em_utils_save_message): New function to save a CamelMimeMessage
(prompts the user for a location to save).
(em_utils_save_messages): New function to save a list of messages
(given a folder and list of uids).
(em_utils_configure_account): Configure a new account...
(em_utils_check_user_can_send_mail): Make sure the user has a
transport setup.
(em_utils_edit_message): New function to edit a message object.
(em_utils_edit_messages): New function to open a composer to edit
each message.
(em_utils_forward_attached): New function to forward messages as
an attachment,
(em_utils_forward_inline): Forward a bunch of messages inline.
(em_utils_forward_quoted): Forward a bunch of messages quoted.
(em_utils_redirect_message): Redirect a message object.
(em_utils_redirect_message_by_uid): Redirect a message given a
folder and uid.
(em_utils_reply_to_message): Reply to a message object.
(em_utils_reply_to_message_by_uid): Reply to a message given a
folder and uid.
(em_utils_post_reply_to_message_by_uid): Post a reply to a message
given a folder and uid.
* mail-ops.c (filter_folder_free): Use em_utils_uids_free().
(transfer_messages_free): Same.
(get_messages_free): Here too.
(save_messages_free): Same.
2003-08-20 Not Zed <NotZed@Ximian.com>
* em-subscribe-editor.[ch]: new widget, a dialog for editing
subscriptions.
* em-format-html.c (efh_format_done): emit a complete when done.
* em-format.c (emf_class_init): Added a 'complete' signal, so that
printing knows when to print.
* em-format-html-print.c (em_format_html_print_print): Changed to
take the message and source formatter too. Runs an async render
then prints.
2003-08-19 Not Zed <NotZed@Ximian.com>
* em-*.c: stacks more changes, added some bonobo menu setup, and
implemented the trivial functions.
* em-message-browser.[ch]: New message browser, inherits from
em-folder-view. Basically works.
* message-list.c (message_list_select_uid): if we're selecting
while still loading, setup a pending select.
(regen_list_free): Check for a pending select, and select the
message if we're now idle.
* em-folder-view.c (em_folder_view_set_message,
em_folder_view_set_folder): Make virtual macro's.
(emfv_control_activate): added hook to enable bonobo state when setup.
* em-format.c (emf_format_clone): base implementation, just clears
state data.
* em-format.h: change ::format to ::format_clone. Make
em_format_format_clone a macro/virtual method.
* mail-mt.c (em_channel_setup): new function to setup i/o
channels, so we can control the recursive flag. leave off for
now.
(mail_msg_init): setup MsgPort channels using above.
* em-format-html.c (efh_format): serialise/de-recursify formatting
via a timeout function.
(efh_format_timeout): keep polling to find out if cancellation is
complete, then kick off a new render.
2003-08-18 Not Zed <NotZed@Ximian.com>
* em-*.c: more updates, incl threaded formatting queue.
2003-08-18 Jeffrey Stedfast <fejj@ximian.com>
* em-format-html-display.c (em_format_html_display_zoom_in): New
method to zoom-in on the gtkhtml contents.
(em_format_html_display_zoom_out): Same but for zoom-out
(em_format_html_display_zoom_reset): You get the idea.
2003-08-12 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (invert_selection): Use
message_list_invert_selection().
(select_thread): Use message_list_select_thread().
(select_all): Use message_list_select_all().
* message-list.c (message_list_select_all): New function.
(message_list_select_thread): New function.
(message_list_invert_selection): New function.
2003-08-12 Jeffrey Stedfast <fejj@ximian.com>
* mail-session.c: Synced up with HEAD.
* component-factory.c:
* mail-folder-cache.[c,h]:
* mail-tools.h:
* mail-ops.[c,h]:
* mail-send-recv.c:
* mail-format.[c,h]:
* mail-display.c:
* mail-account-gui.c:
* mail-local.c:
* mail-offline-handler.c:
* subscribe-dialog.c:
2003-08-12 Jeffrey Stedfast <fejj@ximian.com>
* em-format-html-display.c: Fixed some compiler warnings.
* em-format.c: Updated for new mime-parser changes made to HEAD.
* em-folder-view.c: Fixed some compiler warnings.
* em-format-html.c: Fixed some compiler warnings.
2003-08-06 Not Zed <NotZed@Ximian.com>
* em-format-html-display.c (efhd_format_attachment): Added bonobo
embeddables.
2003-08-01 Harry Lu <harry.lu@sun.com>
*Fix for bug #6951
* mail-display.c (launch_cb): Bypass the new added menu item.
(save_all_parts_cb): New function. Do the real save-all work.
(save_all_parts): New function. Get the directory to save to.
(save_all_cb): New function. The call-back function for the new
added menu item.
(pixmap_press): Add the new menu item "Save All Attachment...".
(ptr_array_free_notify): A simple wrapper function to free the
pointer array.
(do_attachment_header): Save attachment pointer in an array for
"Save All Attachment" use.
2003-08-01 Yuedong Du <yuedong.du@sun.com>
* message-browser.c (on_key_press): close mail message window
using 'ESC' key, fix bug #47087
2003-07-28 Jeffrey Stedfast <fejj@ximian.com>
* mail-crypto.c: Removed smime functions as they were stale.
2003-07-25 Jeffrey Stedfast <fejj@ximian.com>
* message-browser.c (message_browser_new): Handle our own Delete
key presses. Fixes bug #45597.
2003-07-25 Ettore Perazzoli <ettore@ximian.com>
* mail-callbacks.c (do_view_message): No need to pass a shell
argument to message_browser_new() anymore.
* message-browser.c (message_browser_new): Removed arg shell. No
need to pass it to folder_browser_new() either.
* mail-component.c (create_view_callback): No need to pass a shell
arg to folder_browser_factory_new_control() anymore.
* folder-browser-factory.c (folder_browser_factory_new_control):
Removed arg shell; folder_browser_browser_new() doesn't need it
anymore.
* folder-browser.c (folder_browser_destroy): No need to unref
->shell anymore.
(folder_browser_new): Removed shell arg.
(folder_browser_gui_init): Removed a const qualifier that was not
supposed to be there.
* folder-browser.h: Removed member shell from struct
FolderBrowser.
2003-07-25 Ettore Perazzoli <ettore@ximian.com>
* folder-browser.c (folder_browser_gui_init): Get the search
context through mail_component_peek_search_context(), since it's
no longer a global variable.
(folder_browser_gui_init): Cleaned up an extra unneeded if()
statement.
* mail-component.c: New member search_context in struct
MailComponentPrivate.
(mail_component_peek_search_context): New.
(setup_search_context): New function to initialize the
search_context, based on the old code in component-factory.c.
(mail_component_init): Call it here.
(impl_dispose): Unref the rule_context.
* mail-component-factory.c: Removed global variable
search_context.
2003-07-25 Ettore Perazzoli <ettore@ximian.com>
* mail-component.c (browser_page_switched_callback): New callback
for the "page_switched" signal on EStorageBrowser; deactivate the
previous page, activate the new one.
(impl_createControls): Connect.
2003-07-24 Ettore Perazzoli <ettore@ximian.com>
* mail-mt.c (do_op_status): Pass "evolution-mail" as the ID to
evolution_activity_client_new(). [This is just a temporary thing
to avoid the fact that we don't have component-factory.h anymore.
Eventually we'll just get rid of the activity client stuff.]
* mail-component-factory.c: Added to the build. Also, finished
implementing and moving the factory over from component-factory.c.
* component-factory.c: Removed from the build.
* component-factory.h: Removed from the build.
* mail-component.c: Removed some debugging messages.
2003-07-23 Ettore Perazzoli <ettore@ximian.com>
* subscribe-dialog.c: Converted to use EStorages instead of
EvolutionStorages and the new MailComponent object.
* mail.h: Nuked a bunch of stuff. This will go away when I am
done refactoring.
* mail-offline-handler.c: Use the new MailComponent object.
* mail-folder-cache.c, mail-folder-cache.h: Converted to use
EStorages instead of EvolutionStorages.
* mail-display.c: Use g_timeout and g_source functions instead of
gtk_timeout functions.
* mail-send-recv.c: Use g_timeout and g_source functions instead
of gtk_timeout functions.
(receive_update_got_store): Updated for the new mail_note_store().
* mail-session.c: Use g_timeout and g_source functions instead of
gtk_timeout functions.
* mail-config-factory.c (factory): Removed.
* folder-browser.c (folder_browser_destroy): Use GLib
timeout/source functions instead of the deprecated GTK ones.
(done_message_selected): Likewise.
(folder_browser_gui_init): Protect against fb->search being NULL.
* mail-account-gui.c (add_new_store): Use new MailComponent object
and EStorages instead of EvolutionStorages.
(mail_account_gui_save): Likewise.
* mail-accounts.c (account_delete_clicked): Use new MailComponent
object and EStorages instead of EvolutionStorages.
(account_able_clicked): Likewise.
(account_able_toggled): Likewise.
* mail-autofilter.c: Use mail_component_peek_base_directory()
instead of the evolution_dir global.
* mail-callbacks.c: Likewise.
* mail-config.c (uri_to_evname): Likewise.
(mail_config_get_signature_list): Likewise.
(delete_unused_signature_file): Likewise.
* mail-display.c (mail_display_class_init): Likewise.
* mail-importer.c (mail_importer_make_local_folder): Likewise.
* mail-local.c (mlf_getv): Likewise.
* mail-ops.c (uid_cachename_hack): Likewise.
* mail-summary.c (generate_folder_summaries): Likewise.
* mail-tools.c (mail_tool_get_local_inbox): Likewise.
(mail_tools_folder_to_url): Likewise.
* mail-vfolder.c (mail_vfolder_delete_uri): Likewise.
(mail_vfolder_rename_uri): Likewise.
(context_rule_removed): Likewise.
(store_folder_deleted): Likewise.
(store_folder_renamed): Likewise.
(vfolder_load_storage): Likewise.
(vfolder_editor_response): Likewise.
(edit_rule_response): Likewise.
(new_rule_clicked): Likewise.
(vfolder_gui_add_rule): Likewise.
* mail-session.c (main_get_filter_driver): Likewise.
(mail_session_forget_password): Likewise.
(mail_session_init): Get a base_directory arg.
* component-factory.c, component-factory.h: Disabled a bunch of
stuff to get it to compile in the new configuration. These files
will eventually go away when I am done refactoring this.
* Makefile.am: Do not build importers, compile generate
skels/stubs for Evolution.
* GNOME_Evolution_Mail.server.in.in: Rename control factory to
OAFIID:GNOME_Evolution_Mail_Factory2. Add new component
GNOME_Evolution_Mail_Component2.
* mail-component-factory.c: New file implementing the Bonobo
factory.
* mail-component.c, mail-component.h: New files implementing the
new mail component, using the new Evolution::Component IDL.
2003-07-23 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (mail_format_data_wrapper_write_to_stream): Revert
prior changes.
2003-07-23 Dan Winship <danw@ximian.com>
* folder-browser.c (message_list_drag_data_get): Fix type warnings
(folder_browser_toggle_caret_mode): Remove unused variable.
* folder-browser-ui.c (basename): remove unused function
* mail-account-gui.c (mail_account_gui_build_extra_conf): Fix
warnings
* mail-callbacks.c (empty_trash): Remove unused variable.
* mail-display.c: #include gal/widgets/e-gui-utils.h for
e_auto_kill_popup_menu_on_selection_done
* mail-importer.c: #include e-util/e-path.h for e_path_to_physical
* mail-session.c (main_play_sound): don't declare filename to be
const and then free it.
* mail-vfolder.c (vfolder_edit_rule, vfolder_gui_add_rule): Fix
casts
* message-list.c (build_flat_diff): Fix a typo in the
non-BROKEN_ETREE code
2003-07-16 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (handle_multipart_encrypted): We don't have
camel_pgp_mime_is_rfc2015_encrypted() anymore so just look at the
protocol for now.
(mail_format_data_wrapper_write_to_stream): Updated for the new
way camel handles content objects.
2003-07-15 Federico Mena Quintero <federico@ximian.com>
* folder-browser.c (message_list_drag_data_received): Handle
invalid URIs, or more likely, the last empty element in a URI list
--- g_strsplit() will yield { "uri1", "", NULL }. Fixes #46398.
* component-factory.c (destination_folder_handle_drop): Likewise.
2003-07-15 Yuedong Du <yuedong.du@sun.com>
* mail-config.c: (config_write_style), (mail_config_init): remove
the use of caret mode widget style.
* mail-display.c: (display_notify), (mail_display_new): use new
gtkhtml api to set caret mode.
2003-07-11 Antonio Xu <antonio.xu@sun.com>
* folder-browser-ui.c: Change the EditPaste mask to IS_0MESSAGE so
that it is always activatable. Fixes bug #46018.
2003-07-04 Maxx Cao <maxx.cao@sun.com>
** For bug #41839
* mail-display.c (do_attachment_header): Attachment buttons made
accessable with keyboard (focusable). "Inline" button is disabled
when attachment can't be viewed inline.
(do_signature): Signature button made accessable with keyboard
(focusable).
(button_press): Function changed to an event callback (originally
gtkbutton signal callback).
(popup_menu_placement_callback): Function added to place popup
menu (of attachment) beside button when activated by keyboard.
2003-07-10 Yuedong Du <yuedong.du@sun.com>
* evolution-mail.schemas: add a gconf key corresponding to newly
introduced caret mode of gtkhtml widget.
* folder-browser-ui.c: new verb handling, corresponding the new menu
entry for the caret mode flag.
* folder-browser.h: declaration of new verb handler to the menu entry
that turn caret mode on/off. The function just set the new introduced
gconf key.
* folder-browser.c: ditto
* mail-config.c: lstione to the new gconf key, and when caret mode
flag is set/unset,change the style of gtkhtml widget. see bug
#44607.
2003-07-09 Jeffrey Stedfast <fejj@ximian.com>
* mail-crypto.h: Removed camel-pgp-mime.h, it no longer exists.
* mail-format.c: Remove camel-pgp-mime.h
2003-07-07 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (mail_generate_reply): Use
camel_strcase_hash/equal.
* upgrade-mailer.c: Updated to use the camel-file-utils version of
mkdir.
2003-07-02 Jeffrey Stedfast <fejj@ximian.com>
* mail-tools.c (mail_tool_forward_message): Strip the signature
from the body text. Fixes bug #45523. While we're here, also fix
the code to quote exactly the same way as the
mail_tool_quote_message() function.
(mail_tool_quote_message): The last arg should not be
'want_plain', because that arg is for whether or not the body
should be quoted.
* folder-browser.c (message_list_drag_data_get): Apply a
From-filter when dragging as a test/uri-list and
message/rfc822. Fixes bug #45617. Also free the uids ptrarray for
the text/uri-list case.
2003-07-01 Dan Winship <danw@ximian.com>
* mail-display.c (pixbuf_for_mime_type): Gone
(pixbuf_gen_idle): Use e_icon_for_mime_type instead.
2003-06-27 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (filter_date): Use the newer utf8 versions of the
e_strftime*() functions since our format strings are all now in
UTF-8.
* mail-display.c (mail_display_render): Use the newer
e_utf8_strftime_fix_am_pm().
* mail-callbacks.c (mail_generate_reply): Use e_utf8_strftime(),
otherwise we can end up with invalid utf-8.
2003-06-25 Radek Doulik <rodo@ximian.com>
* mail-config.c (config_write_style): provide hardcoded default
(red) spell error color
2003-06-24 Jeffrey Stedfast <fejj@ximian.com>
Might fix bug #45368 but I wouldn't bet on it.
* message-browser.c (message_browser_new): Record the signal id
for folder_loaded.
(message_browser_folder_loaded): disconnect by id rather than
searching for the handler. Save the id of the message_list_built
signal handler.
(message_browser_message_list_built): Disconnect the handler by
id.
(message_browser_destroy): Disconnect the signal handlers by id.
2003-06-20 Not Zed <NotZed@Ximian.com>
** See bug #43887
* mail-format.c (mail_get_message_body): handle text/enriched and
text/richtext explictly, and dont treat them as text/plain.
2003-06-23 Radek Doulik <rodo@ximian.com>
* mail-config.c (config_write_style): add
EvolutionMailPrintHTMLWidget style assignment
* mail-callbacks.c (do_mail_print): set printing widget name
2003-06-23 Dan Winship <danw@ximian.com>
* message-list.c (on_selection_changed_cmd): Save the idle_id
2003-06-23 Larry Ewing <lewing@ximian.com>
* folder-browser.c (do_message_selected): make sure not to strcmp
a possibly NULL string.
2003-06-19 Not Zed <NotZed@Ximian.com>
** See bug #45063
* folder-browser.c (do_message_selected): dont re-load if the same
message gets selected again as one we've already shown. Etree
sends out selection changed events even when when it hasn't.
2003-06-18 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (hide_save_state): Only save state if we have a
folder reference. Fixes some warnings about casting a NULL object
to a CamelFolder.
2003-06-16 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (ml_tree_value_at): Don't display an unread icon
for a parent message status if it has unread children but has been
read itself. Instead, show that we have unread children by just
making the message test bold (which it was already doing, so
yay... this was easy). Fixes bug #42630.
2003-06-16 Not Zed <NotZed@Ximian.com>
** See bug #44609
* mail-vfolder.c (vfolder_edit_rule): put the ok/cancel buttons in
the stupid gnome 2 order.
** See bug #33593
* message-list.c (on_selection_changed_cmd): also listedn to
selection changed events, since the etable api has changed.
(get_selected_cb): helper for above.
(message_list_construct): hook to selection change signal.
* mail-callbacks.c (composer_send_queued_cb): Unref the composer
to match the ref composer_send_cb();
** See bug #44519
* message-browser.c (message_browser_message_list_built): We want
to disconnect from the messagelist, not folderbrowser signal.
2003-06-11 Jeffrey Stedfast <fejj@ximian.com>
* mail-format.c (format_mime_part): We only really want to use
mail_identify_mime_part() if the content-type is
application/octet-stream - any other type (if it doesn't have a
handler) should just force the user to save to disk.
(handle_text_plain): Only pay attention to format=flowed if the
mime-type is text/plain (handle_text_plain is the generic text
handler, so we might be processing parts that are not really
text/plain, thus the format param may have different meaning for
those other textual types).
2003-06-11 Larry Ewing <lewing@ximian.com>
* mail-format.c (mail_lookup_handler): free the application list
if we are bailing.
* mail-send-recv.c (free_folder_info): free the info structure as
well.
2003-06-06 Jeffrey Stedfast <fejj@ximian.com>
* message-tag-followup.c (get_week_start_day): Use mail-config's
gconf client.
(target_date_new): Same.
* message-list.c (message_list_set_folder): Use mail-config's
gconf client.
(mail_regen_list): Same.
* mail-tools.c (mail_tool_quote_message): Use mail-config's gconf
client.
(mail_tool_forward_message): Same.
* mail-session.c (main_get_filter_driver): Use mail-config's gconf
client.
* mail-preferences.c (mail_preferences_init): Use mail-config's
gconf client.
(mail_preferences_finalise): Don't unref the gconf client.
* mail-format.c (write_headers): Use mail-config's gconf client.
(mail_format_data_wrapper_write_to_stream): Same.
(handle_text_plain): And here.
* mail-display.c (save_data_cb): Use mail-config's gconf client.
(save_part): Same.
(on_url_requested): Here too.
(mail_text_write): And here.
(mail_display_init): And here.
(mail_display_destroy): Here too.
(mail_display_new): Again here.
* mail-composer-prefs.c (sig_add_cb): Use mail-config's gconf
client.
(mail_composer_prefs_construct): Same.
* mail-callbacks.c (ask_confirm_for_unwanted_html_mail): Use
mail-config's gconf client.
(ask_confirm_for_empty_subject): Same.
(ask_confirm_for_only_bcc): Here too.
(composer_get_message): And here.
(create_msg_composer): Again here.
(mail_generate_reply): Same.
(forward): And here.
(transfer_msg_done): "
(delete_msg): "
(confirm_expunge): "
* component-factory.c (owner_unset_cb): Use mail-config's gconf
client.
* folder-browser-ui.c (folder_browser_ui_add_message): Use the
mailer's gconf client.
(folder_browser_ui_add_list): Same.
(folder_browser_ui_add_global): Here too.
* folder-browser.c (save_cursor_pos): Use the mailer's gconf
client.
(folder_browser_set_message_preview): Same.
(folder_browser_toggle_preview): Here too.
(folder_browser_toggle_threads): And here.
(folder_browser_toggle_hide_deleted): Here as well.
(folder_browser_set_message_display_style): And here.
(fb_resize_cb): Here.
(paned_realised): And here.
(done_message_selected): And everywhere...
* mail-account-gui.c (sig_add_new_signature): Use the mailer gconf
client.
* mail-config.c (mail_config_get_gconf_client): New function to
return the global GConfClient used by the mailer.
(mail_config_write_on_exit): On exit, free our objects and such.
(mail_config_signature_run_script): Use config->gconf.
2003-06-04 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (invert_selection): Get rid of the if-focused
code, that will always prevent the etree from getting the
selection inverted because the menu item will always have focus at
this time. Fix for bug #43972.
2003-06-11 Not Zed <NotZed@Ximian.com>
** See bug #22542
* component-factory.c (storage_create_folder): If we're creating a
folder on a vstore, popup a vFolder editor rather than failing.
2003-06-05 Not Zed <NotZed@Ximian.com>
** Part of #42691.
* importers/Makefile.am (BUILT_SOURCES): added server_DATA.
* Makefile.am (%.server.in): create a proper implicit rule for
temporary .in file.
2003-06-04 Not Zed <NotZed@Ximian.com>
** See bug #43974
* mail-tools.c (mail_tool_do_movemail): use a proper CamelURL to
decode the uri, not hacky strcmp stuff.
* mail-account-gui.c (extract_values): if we have an conf_entry,
ignore username, hostname, and path ones, as these are handled
implicitly in the url itself. Came about because of the fix for
#42838.
2003-06-03 Federico Mena Quintero <federico@ximian.com>
* mail-search.c (mail_search_construct): Put the buttons in HIG
order; don't replace the label of the stock Find button. Also,
add Escape as a keybinding for the Close button (see why GTK+ is
on crack on b.g.o #74221 and #101293).