2003-04-30 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (mark_as_unseen): To be consistant with the
message-list envelope toggle, undelete the message when we unmark
the Seen flag here as well. Fixes bug #42118.
2003-04-30 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (ml_tree_value_at): Fixed to return the correct
values (swapped) in order to fix bug #42120.
2003-04-30 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (regen_list_regened): Save the tree state before
we tear down the tree and then load it back again. yay. Fixes bug
#42170 and #40074.
svn path=/trunk/; revision=21047
2003-04-29 Not Zed <NotZed@Ximian.com>
** See bug #41972
* message-list.c (ml_tree_value_at): fix (void *) casts on trinary
ops.
* folder-browser.c (on_right_click): Store the label tag in the
label callback data, not the translated name.
* mail-config.c (label_defaults[]): Initialise with the tag
values.
(config_clear_labels): free tag field.
(config_cache_labels): setup the tag field based on the position
of the label name.
(mail_config_get_label_color_by_name): Lookup colour by the
untranslated TAG, not the translated/customisable tag.
* mail-config.h (MailConfigLabel): Add a tag field, we were using
the translated name as the label(!).
svn path=/trunk/; revision=21008
2003-04-14 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c (build_dialogue): create a stock cancel button
with a cancel all text.
(build_dialogue): Create stock-like cancel buttons with no
accelerators. A workaround for #41043.
* message-list.c (ml_tree_value_at): if the node is the root node,
do nothing. etable shouldn' really be searching the root node if
it isn't visible ...? For #41190.
svn path=/trunk/; revision=20842
2003-04-07 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (ml_tree_value_at): For string columns, never
return NULL - always return "" if the value is empty. Fixes bug
#40728.
svn path=/trunk/; revision=20730
2003-03-26 Jeffrey Stedfast <fejj@ximian.com>
Fixes bug #40074.
* folder-browser-factory.c (control_deactivate): Save message-list
state.
* message-list.c (message_list_save_state): Save the various
states.
svn path=/trunk/; revision=20525
2003-02-11 Jeffrey Stedfast <fejj@ximian.com>
* mail-accounts.c (mail_accounts_tab_class_init): Register a
destroy virtual method.
(mail_accounts_tab_destroy): Set mail_display->destroyed = TRUE.
* message-list.c (message_list_destroy): Set
mail_display->destroyed = TRUE. This is a workaround for the
GTK_OBJECT_DESTROYED() macro that we used to use before.
svn path=/trunk/; revision=19884
2003-02-10 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (build_tree): Use g_signal_emit() rather than
gtk_signal_emit().
(build_flat): Same here.
* mail-signature-editor.c: #include <string.h>
* mail-vfolder.c: #include <string.h>
* mail-session.c: #include <string.h>
* mail-search.c: #include <string.h>
* mail-mt.c: #include <string.h>
* mail-ops.c (save_part_save): Use strcasecmp() instead of
g_strcasecmp().
* mail-local.c: #include <string.h>
(reconfigure_folder_reconfigured): Use a GtkDialog instead of
gnome_error_dialog().
* mail-format.c (find_preferred_alternative): Use g_ascii_strdown
since g_strdown is deprecated.
(fake_mime_part_from_data): Removed, no longer used it seems.
(destroy_part): Also removed.
* mail-display.c (make_popup_window): Replace call to
gtk_window_set_polociy() with gtk_window_set_resizable() instead.
(popup_size_allocate_cb): Use gtk_window_set_position() with
GTK_WIN_POS_MOUSE instead of calculating the position to put it
in.
svn path=/trunk/; revision=19878
2003-02-03 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (mail_regen_list): Get the thread_subject setting
here instead of in regen_list_regen since that function will be
called in another thread and we can't make corba calls in anything
but the main thread.
(regen_list_regen): Don't make CORBA calls here! (shame on me).
svn path=/trunk/; revision=19715
2003-01-31 Jeffrey Stedfast <fejj@ximian.com>
* mail-config.c (mail_config_get_labels): New function to return a
cached list of labels.
(mail_config_get_label_color_by_name): New convenience function to
search the cached labels.
(mail_config_get_label_color_by_index): Same.
(mail_config_init): Cache the labels and also listen for changes
to them in the gconf db.
(config_cache_labels): Internal function to cache the labels.
* folder-browser.c (on_right_click): Fixed the label colours in
the menu by using the cached linked list of labels.
* mail-preferences.c (colorpicker_set_color): Now takes a string
argument allowing us to get rid of converting a string into an rgb
guint32 all over the place when trying to set defaults, since we
now store colors in gconf as strings.
(mail_preferences_construct): Use the cached labels (they are
already parsed for us).
svn path=/trunk/; revision=19694
2003-01-07 Jeffrey Stedfast <fejj@ximian.com>
* folder-browser.c (save_cursor_pos): Use gconf to get the paned
size.
(folder_browser_set_message_preview): Same.
(folder_browser_toggle_hide_deleted): Use gconf to set the
hide-deleted state.
(folder_browser_set_message_display_style): Same but for the
message_display_style.
(fb_resize_cb): Save the paned_size via gconf.
(paned_size_changed): Callback for when the paned_size gets
changed. Change the folder-browser's paned size to the new
setting.
(folder_browser_gui_init): Listen to changes to the paned_size and
also get the initial size from gconf.
* message-list.c (message_list_set_folder): Use gconf.
(regen_list_regen): Use gconf.
* message-browser.c (transfer_msg_done): Use gconf to get the
hide_deleted setting.
* mail-account-gui.c (sig_add_new_signature): Use gconf.
* folder-browser-ui.c (folder_browser_ui_add_list): Use gconf.
* folder-browser.c (save_cursor_pos): Use gconf.
(folder_browser_set_message_preview): Same.
(folder_browser_toggle_hide_deleted): Here too.
(folder_browser_set_message_display_style): And here.
(folder_browser_gui_init): Here too.
(done_message_selected): And here.
* mail-config.c (mail_config_get_thread_subject): Removed.
(mail_config_set_thread_subject): Removed.
(mail_config_get_empty_trash_on_exit): Removed.
(mail_config_set_empty_trash_on_exit): Removed.
(mail_config_get_last_filesel_dir): Removed.
(mail_config_set_last_filesel_dir): Removed.
(mail_config_get_hide_deleted): Removed.
(mail_config_set_hide_deleted): Removed.
(mail_config_get_paned_size): Removed.
(mail_config_set_paned_size): Removed.
(mail_config_get_send_html): Removed.
(mail_config_set_send_html): Removed.
(mail_config_get_confirm_unwanted_html): Removed.
(mail_config_set_confirm_unwanted_html): Removed.
(mail_config_get_citation_highlight): Removed.
(mail_config_set_citation_highlight): Removed.
(mail_config_get_citation_color): Removed.
(mail_config_set_citation_color): Removed.
(mail_config_get_do_seen_timeout): Removed.
(mail_config_set_do_seen_timeout): Removed.
(mail_config_get_mark_as_seen_timeout): Removed.
(mail_config_set_mark_as_seen_timeout): Removed.
(mail_config_get_prompt_empty_subject): Removed.
(mail_config_set_prompt_empty_subject): Removed.
(mail_config_get_prompt_only_bcc): Removed.
(mail_config_set_prompt_only_bcc): Removed.
(mail_config_get_confirm_expunge): Removed.
(mail_config_set_confirm_expunge): Removed.
(mail_config_get_confirm_goto_next_folder): Removed.
(mail_config_set_confirm_goto_next_folder): Removed.
(mail_config_get_goto_next_folder): Removed.
(mail_config_set_goto_next_folder): Removed.
(mail_config_get_http_mode): Removed.
(mail_config_set_http_mode): Removed.
(mail_config_get_default_forward_style): Removed.
(mail_config_set_default_forward_style): Removed.
(mail_config_get_default_reply_style): Removed.
(mail_config_set_default_reply_style): Removed.
(mail_config_get_message_display_style): Removed.
(mail_config_set_message_display_style): Removed.
(mail_config_get_default_charset): Removed.
(mail_config_set_default_charset): Removed.
(mail_config_get_x_mailer_display_style): Removed.
(mail_config_set_x_mailer_display_style): Removed.
* subscribe-dialog.c (populate_store_list): Use the list of
accounts. We can't get the list of sources anymore.
(populate_store_foreach): Updated.
* mail-callbacks.c (guess_me_from_accounts): Use account->enabled.
(mail_generate_reply): Same.
(empty_trash): Here too.
* mail-accounts.c (account_delete_clicked): Use account->enabled
rather than source->enabled.
(account_able_clicked): Same.
(account_cursor_change): Here too.
(mail_accounts_load): And here.
* component-factory.c (owner_unset_cb): Use gconf empty-on-exit
settings.
(mail_load_storages): Use account->enabled rather than
account->source->enabled. The struct changed.
* mail-composer-prefs.c (sig_add): Get the send_html pref from gconf.
* message-tag-followup.c (target_date_new): Use gconf.
* mail-config.c (mail_config_get_week_start_day): Removed.
* mail-tools.c (mail_tool_quote_message): Use gconf here too, but
we don't need to parse the colour - just use it as a raw string.
(mail_tool_forward_message): Use gconf.
* mail-format.c (mail_format_data_wrapper_write_to_stream): Use gconf.
(write_headers): Use gconf.
(handle_text_plain): Same.
* mail-display.c (mail_text_write): Updated to use gconf and parse
GdkColour strings.
(on_url_requested): Updated to use gconf.
* mail-callbacks.c (ask_confirm_for_unwanted_html_mail): Use gconf
rather than the old mail-config APIs which will be removed.
(ask_confirm_for_empty_subject): Same.
(ask_confirm_for_only_bcc): Here too.
(composer_get_message): And here.
(create_msg_composer): Same.
(transfer_msg_done): Again here.
(delete_msg): Here too.
(confirm_expunge): And finally here.
* mail-config.c (mail_config_write): Use gconf.
(mail_config_get_sources): Removed.
* mail-account-gui.c (mail_account_gui_save): No need to save
enabled-state anymore for a source.
* mail-config-druid.c (wizard_finish_cb): Instead of setting
account->source->enabled to TRUE, just set account->enabled to
TRUE. The structures changed a bit.
* mail-send-recv.c (mail_send_receive): Get the list of accounts
instead of sources, and pass them along to build_dialogue. I'm
trying to get rid of the mail_config_get_sources() api.
(mail_autoreceive_setup): Here too.
* mail-config.c (mail_config_get_filter_log): Removed.
(mail_config_set_filter_log): Removed.
(mail_config_get_filter_log_path): Removed.
(mail_config_set_filter_log_path): Removed.
(mail_config_get_new_mail_notify): Removed.
(mail_config_set_new_mail_notify): Removed.
(mail_config_get_new_mail_notify_sound_file): Removed.
(mail_config_set_new_mail_notify_sound_file): Removed.
* mail-session.c (main_get_filter_driver): Updated to use the
gconf settings.
svn path=/trunk/; revision=19271
2002-12-03 Not Zed <NotZed@Ximian.com>
* folder-browser.c (folder_browser_finalise/destroy): frobbed
around with these till it exits without crashing.
* message-list.c (message_list_destroy): made a destroy
handler again (was dispose). Frobbed around with this and
finalise till it can destroy without crashing.
* message-browser.c (message_browser_new): ref/sink the
folderbrowser.
svn path=/trunk/; revision=18991
2002-11-26 Not Zed <NotZed@Ximian.com>
* message-list.c (get_normalised_string): Duh idiot, "un-fixed"
the memleak i added.
* mail-callbacks.c (composer_get_message): Set parent window in
message dialogue & DESTROY_WITH_PARENT flag.
(composer_save_draft_cb):
(configure_mail):
(check_send_configuration): Add DESTROY_WITH_PARENT flag to
gtk_message_dialog's
(local_configure_done): remove some unecessary/wrong casts.
(empty_trash_expunged_cb): "
(do_mail_print): use gtk_window_set_transient_for instead of
e_dialog_set_parent.
svn path=/trunk/; revision=18923
2002-11-26 Not Zed <NotZed@Ximian.com>
* mail-account-editor.c (mail_account_editor_new):
gtk_widget_set_parent_window -> gtk_window_set_transient_for.
* mail-callbacks.c (composer_send_queued_cb): dont unref composer.
* message-browser.c (message_browser_destroy): moved back from
finalise.
2002-11-25 Not Zed <NotZed@Ximian.com>
* message-list.c (message_list_dispose): move saving tree state
here.
(message_list_finalise): And take it from here.
* mail-display.c (mail_display_destroy): @#$@# gtk. changed this
around a bit.
(mail_display_init): Fix prototype, its a gobject.
(mail_display_init): ref/sink the invisible gtkobject.
svn path=/trunk/; revision=18919
2002-11-13 Not Zed <NotZed@Ximian.com>
* Makefile.am: Commented out stuff that doesn't build yet. Also
fixed idl build rule. importers still not built.
* main.c (main): bonobactivationise. remove push visual/colormap.
(main): no longer activate activation, let bonobo_init do it.
* mail-signature-editor.c (menu_help): Change help api.
* mail-session.c (user_message_destroy_noreply): removed. Not
used?
* mail-local.c (load_metainfo): xml root->children.
* mail-format.c (g_string_append_len): Removed, it exists now.
2002-11-12 Not Zed <NotZed@Ximian.com>
* subscribe-dialog.c: gnome2ised, use gtkdialog.
(subscribe_get_global_extras): use a weak ref rather than destroy signal.
* message-tag-followup.c: gnome2ised.
* message-tag-editor.c: gnome2ised & converted to gtkdialog.
* message-list.c: gnome2ised.
(message_list_finalise): From destroy method. maybe should be
destroy still.
* message-browser.c: port to gnome2
(message_browser_finalise): renamed from destroy method.
* mail-stream-gtkhtml.c: removed redundant
camel_class_get_global_classfuncs() call.
* mail-signature-editor.c: gtkdialogised, & bonobo api changes.
* mail-search-dialogue.c: gtkdialogised.
* mail-folder-cache.c: cleaned up camel ref/hook casts.
* mail-composer-prefs.c (mail_composer_prefs_get_type): convert to
gtype.
* mail-font-prefs.c (mail_font_prefs_destroy): from finalise.
* mail-config.c: s/bonobo_config/e_config_listener/
Added /apps/Evolution prefix to the evolution keys.
Changed to use e_config_listener, etc.
(mail_config_init): remove bonobo_config stuff.
(mail_config_check_service): gtk dialogise.
(check_response): from check_cancelled.
* mail-config-druid.c (mail_config_druid_destroy): renamed from
_finalize, turned into destroy handler.
(construct): set type to toplevel, GTK_WINDOW_DIALOG no longer exists.
* mail-config-factory.c (mail_config_register_factory): bonobo api
changes.
* mail-crypto.c (mail_crypto_get_pgp_cipher_context): cleaned up
unref casts.
* mail-display.c (write_data_to_file): gnome->gtkdialog.
(on_link_clicked): use ascii_str*cmp on url.
(save_part): g_path stuff.
(launch_cb): gtk dialog.
(pixmap_press): de-oafify.
(pixbuf_for_mime_type): gnome-vfs api changes.
(do_attachment_header): Change the pixmap to a gtkimage.
(do_signature): "
(pixbuf_gen_idle): "
(do_attachment_header): ascii_str*cmp
(do_attachment_header): gnome pixmap->gtkimage.
(mail_display_destroy): protect against gtk mentalness.
(html_button_press_event): ascii_str*cmp
(drag_data_get_cb): added comment for translators of filename.
* mail-format.c (component_supports): de-oafise.
(is_anonymous): ascii_strncmp
(attachment_header): remove utf8<>locale stuff, and gnomevfs api
changes.
(format_mime_part): fix g_strdown call.
(write_field_row_begin): kill utf8->gtk stuff.
(write_address): "
(default_header_index): ascii_strcasecmp
(handle_text_plain): "
(handle_text_enriched): "
(handle_multipart_encrypted): remove utf/gtk stuff.
(handle_message_external_body): ascii_str*cmp
* mail-identify.c (mail_identify_mime_part):
(identify_by_magic): gnome vfs api changes.
* mail-importer.c: Converted.
* mail-local.c (load_metainfo): xml childs -> children.
(mls_get_folder): g_strerror.
(mls_delete_folder): g_strerror.
(reconfigure_got_folder): Gnome->GtkDialog
(reconfigure_response): from reconfigure_clicked.
* mail-mt.c (mail_msg_check_error): gnome -> gtk dialog
(error_response): renmae from error_gone. destroy widget on any
response.
* mail-offline-handler.c (impl_finalise): renamed from
impl_destroy since thats what it should be anyway.
* mail-ops.c: removed utf8 widget conversion & camel_object_un/ref
casts.
* mail-preferences.c (mail_preferences_get_type): glib2'ised.
* mail-search.c (mail_search_finalise): renmaed from destroy &
properly chain.
(mail_search_get_type): glib2 & make gtkdialog parent.
(entry_run_search): run search when entry activated. not sure if
gtkdialog has anohter way to do this on an arbitrary widget.
* mail-send-recv.c (dialogue_response): renamed from clicked. Use
gtkdialog.
* mail-session.c (request_password_deleted): removed, redundant.
(pass_response): rename from pass_got, changed for gtkdialog.
(user_message_destroy): Removed, redundant.
(user_message_response): Renamed from user_message_clicked.
2002-11-11 Not Zed <NotZed@Ximian.com>
* mail-stream-gtkhtml.c (mail_stream_gtkhtml_class_init): dont use
get_global_classfuncs, just get the type
* mail-tools.c: converted gnome2 api's.
* mail-vfolder.c (vfolder_editor_response): clicked->response.
(vfolder_editor_destroy): Removed.
(vfolder_edit): gtk dialog api
(edit_rule_response): clicked->response.
(vfolder_edit_rule): gnomedialog->gtkdialog.
(vfolder_gui_add_rule): "
(new_rule_clicked): clicked->response
svn path=/trunk/; revision=18723
* Mailer.idl: rename this from "Mail.idl" so that the generated .h
file won't overwrite "mail.h" on Mac OS X. Remove some
never-implemented IDL and add MailConfig_removeAccount.
* Makefile.am: Update for IDL rename
* mail-config.c: #include Mailer.h, not Mail.h
(impl_GNOME_Evolution_MailConfig_removeAccount): Implement.
* folder-info.c: #include Mailer.h, not Mail.h
* message-list.c: Remove Mail.h include.
svn path=/trunk/; revision=18060
2002-09-10 Not Zed <NotZed@Ximian.com>
* folder-browser.c (got_folder): If we already have a folder, make
sure we unref/unhook from it. Fixes a crash on exit.
* message-list.c (message_list_hide_clear): clear thread tree
cache if set.
(message_list_set_search): Same. For bug #28834.
svn path=/trunk/; revision=18029
2002-08-27 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (regen_list_regen): Pass
mail_config_get_thread_subject() as the third argument to
camel_folder_thread_messages_new().
* mail-config.c (config_read): Read in the thread_by_subject
config option.
(mail_config_write_on_exit): Save the thread_by_subject config
option.
(mail_config_get_thread_subject): New function to get the
thread_subject value.
(mail_config_set_thread_subject): New function to set the
thread_subject value.
svn path=/trunk/; revision=17881
2002-08-21 Jeffrey Stedfast <fejj@ximian.com>
* mail-session.c (class_init): Don't bother overloading the
timeout virtual methods since they don't exist anymore.
* mail-folder-cache.c (mail_note_store): Register a ping timeout
callback to ping each store to keep the connections alive.
svn path=/trunk/; revision=17831
2002-08-20 Peter Williams <peterw@ximian.com>
* message-list.c (search_func): Once we hit the target node,
update the cursor_uid if it's set. Fixes#29085.
svn path=/trunk/; revision=17821
2002-08-06 Not Zed <NotZed@Ximian.com>
* message-list.c (message_list_hidden): Only count hidden messages
which are in the folder. Should probably maintain hidden table
better. For #4334.
svn path=/trunk/; revision=17707
2002-08-05 Jeffrey Stedfast <fejj@ximian.com>
* mail-mt.c (mail_msg_check_error): If we are not in interactive
mode, don't display error dialogs.
* component-factory.c (interactive_cb): Updated to use the new
function mail_session_set_interactive().
(owner_unset_cb): Same here.
* mail-session.c (mail_session_set_interactive): Renamed from
mail_session_enable_interaction().
(mail_session_get_interactive): New function to get the
interactive state.
svn path=/trunk/; revision=17702
2002-08-02 Jeffrey Stedfast <fejj@ximian.com>
* mail-display.c (mail_display_render): Updated to use the new
Follow-Up tags. Instead of storing a string containing the
follow-up tag value, we now have to store the CamelMessageInfo.
(mail_display_destroy): Unref the folder and the message-info.
* folder-browser.c (followup_tag_complete): No longer needed.
(on_right_clicked): Use the individual follow-up tags to decide
whether or not to enable something.
* message-list.c (ml_tree_value_at): Update to use the new
Follow-Up tags.
* mail-callbacks.c (flag_for_followup): Update to use the new
MessageTagEditor API.
(tag_editor_ok): Update this too.
(flag_followup_completed): Updated this too.
(flag_followup_clear): Set all the follow-up tag values to "".
svn path=/trunk/; revision=17691
2002-07-22 Not Zed <NotZed@Ximian.com>
* message-list.c (regen_list_regened): Remove the assert, and
always copy over the threadtree which represents the current view,
unreffing the old one if set. For #28021. Haven't tested this a
lot, but i guess it cant be worse than what is there.
svn path=/trunk/; revision=17524
2002-07-15 Not Zed <NotZed@Ximian.com>
* message-list.c (ml_tree_value_at): Lookup the label colour based
on the label token, not an integer.
* folder-browser.c (on_right_click): Lookup the label name from
the filter type. Sigh, a bunch of other code should do similar
but i'm going to leave it as integers.
(set_msg_label): Set the label directly.
svn path=/trunk/; revision=17473
2002-06-18 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (message_list_change_first_visible_parent): New
convenience function to find the first parent node that is visible
and emit a changed signal on it.
(main_folder_changed): If a message changed, call
change_first_visible_parent() in case we are in a collapsed thread
so that our first visible parent gets updated as well. Fixes bug
#26263.
* component-factory.c (storage_remove_folder): Simplify the error
checking.
svn path=/trunk/; revision=17228
2002-06-17 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (get_normalised_string): New convenience function
to get a cached normalised string.
(subject_compare): Removed, as we strip Re:'s when normalising the
subject strings now.
(ml_tree_value_at): Added support for the normalised columns (used
for a sorting optimisation).
(message_list_init): Initialise normalised_hash.
(message_list_destroy): Destroy normalised_hash.
(message_list_create_extras): Removed subject_compare.
(main_folder_changed): De-cache normalised strings for any removed
uids.
svn path=/trunk/; revision=17213
2002-06-17 Not Zed <NotZed@Ximian.com>
* message-list.c (regen_list_regen): If we dont support searching,
dont try to.
svn path=/trunk/; revision=17208
2002-06-11 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (regen_list_regen): Move m->complete = TRUE; to
within the cancel-check block, this way complete only ever gets
set to TRUE if we weren't cancelled. I assume this is how it was
supposed to work.
svn path=/trunk/; revision=17169
2002-06-11 Not Zed <NotZed@Ximian.com>
* folder-info.c (do_get_info): If we dont get a folder, dont try
and get details off it. Should get rid of most of those annoying
summary warnings, but not the cause of them.
2002-06-06 Not Zed <NotZed@Ximian.com>
* message-list.c (mail_regen_list): Keep track of the regeneration
request in a list.
(regen_list_free): Remove the request from the regenreation list.
(message_list_set_folder): If there are any outstanding
regneration requests, cancel them.
(regen_list_regened): If we were cancelled, do nothing.
(regen_list_regen): If we were cancelled, shortcut processing.
This is all for #23571.
* message-list.c (regen_list_regen): Change the way we calculate
the hide deleted messages and tree view options. Do it based on a
search and uid's rather than a summary.
(regen_list_regened): Handle changes to tree storage.
(mail_regen_list): The tree is now stored between updates, so we
can update the tree structure incrementally. This blows out
memory use some however. We need an etree that uses this as its
model directly?
(message_list_destroy): Free the thread tree.
(message_list_set_folder): Clear the thread tree when changing
folder.
svn path=/trunk/; revision=17165
2002-06-06 Not Zed <NotZed@Ximian.com>
* message-list.c (mail_regen_list): Keep track of the regeneration
request in a list.
(regen_list_free): Remove the request from the regenreation list.
(message_list_set_folder): If there are any outstanding
regneration requests, cancel them.
(regen_list_regened): If we were cancelled, do nothing.
(regen_list_regen): If we were cancelled, shortcut processing.
This is all for #23571.
svn path=/trunk/; revision=17129
2002-06-01 Not Zed <NotZed@Ximian.com>
* mail-local.c (mlf_getv): Implement, return a text description of
the localfolder.
* message-list.c (ml_duplicate_value):
(ml_free_value):
(ml_initialize_value):
(ml_value_is_empty):
(ml_value_to_string):
(ml_tree_value_at): Implement COL_LOCATION, original location of
message (useful for vfolder).
svn path=/trunk/; revision=17072
2002-05-16 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (ml_tree_value_at): Check for a label tag when
doing a lookup on the COLOR column.
* mail-config.c (mail_config_get_label_color_string): Return the
colour in string format.
* folder-browser.c (set_msg_label): Replaces colourise_msg and
sets the "label" tag rather than the "colour" tag.
* mail-preferences.c (mail_preferences_apply): Call
mail_config_write() so that the settings get synced to disk.
svn path=/trunk/; revision=16938
2002-05-15 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (ml_tree_value_at): Instead of g_assert()ing that
the msg_info is not NULL, if it is NULL just return NULL. This
fixes a crash when ETree requests the value at a root node (I
don't understand why it needs to do that??).
svn path=/trunk/; revision=16796
2002-03-14 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (next_thread): Implemented.
* message-list.c (message_list_select_next_thread): New function
to select the next thread.
svn path=/trunk/; revision=16165
2002-03-04 Jeffrey Stedfast <fejj@ximian.com>
* folder-browser.c (my_folder_browser_init): Connect to the
focus-in/out events on the message-list so that we can disable the
EditInvertSelection and EditSelectThread menu items when the
message-list is not in focus.
* folder-browser-ui.c (folder_browser_ui_message_list_unfocus):
New function to de-sensitize some items if the message-list is not
in focus.
(folder_browser_ui_message_list_focus): New function to sensitize
some items if the message-list is not in focus.
* mail-callbacks.c (invert_selection): Only invert the selection
of the message-list if it is the widget in focus.
* message-list.c (message_list_select): Do not explicitly grab the
focus here.
svn path=/trunk/; revision=15909
2002-02-22 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (on_message_list_built): Removed, this wasn't
working as intended and seemed to break other features.
svn path=/trunk/; revision=15801
2002-02-21 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (on_message_list_built): Connect to our own
message_list_built signal. Focus the list and select the first
unread message (or frst message depending). Fixes bug #3900.
svn path=/trunk/; revision=15784
2002-02-19 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (confirm_goto_next_folder): Prompt the user to
find out if he/she wants to go to the next folder with unread mail
in it.
(find_current_folder): Find a given CamelFolderInfo node based on
a given uri.
(find_next_folder_r): Recursively look for a CamelFOlderInfo node
which has unread messages.
(find_next_folder): Given a currently selected CamelFolderInfo
node, look for the next node containing unread messages.
(do_evil_kludgy_goto_next_folder_hack): Find the currently
selected folder and then find the very next folder after it that
contains unread messages and then select it via a CORBA call to
the shell.
(next_unread_msg): If we fail to find an unread message in the
message-list, prompt the user to find out if we should jump to the
next fodler containing unread messages. If so, call
do_evil_kludgy_goto_next_folder_hack().
* message-list.c (message_list_select): Return a boolean value
based on whether the call was successfull or not.
* mail-config.c (mail_config_get_confirm_goto_next_folder):
(mail_config_set_confirm_goto_next_folder):
(mail_config_get_goto_next_folder):
(mail_config_set_goto_next_folder): All new functions, yay.
(config_read): Read in the confirm_goto_next_folder and
goto_next_folder config options.
(mail_config_write_on_exit): Same the options here.
svn path=/trunk/; revision=15770
2002-02-13 Jeffrey Stedfast <fejj@ximian.com>
* folder-browser-ui.c: Set the followup icon to use the new flag
icon rather than the exclamation mark icon.
* mail-callbacks.c (flag_for_followup): Append the selected
messages to the clist in the followp editor.
* message-list.c: Include the new flag-for-followup icon.
* message-tag-followup.c (message_tag_followup_append_message):
New method to add a message to the message-list.
(construct): Get the message_list widget and load the flag icon
pixmap.
svn path=/trunk/; revision=15720
2002-02-11 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c (ml_tree_value_at): Get followup-up message-list
values. Also highlight the message in red if the due-by date is
past due (this is what Outlook does).
(ml_duplicate_value): Handle follow-up columns.
(ml_free_value): Same.
(ml_initialize_value): Here too.
(ml_value_is_empty): And here.
(ml_value_to_string): And finally here.
* message-tag-followup.c (message_tag_followup_i18n_name): New
convenience function.
svn path=/trunk/; revision=15680
2002-02-07 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped the required version of gal.
From addressbook/ChangeLog:
2002-02-07 Christopher James Lahey <clahey@ximian.com>
* gui/widgets/e-addressbook-view.c
(e_addressbook_view_setup_menus): Changed this function to use the
new GalViewMenus which takes a GalViewInstance, instead of a
GalViewCollection.
From calendar/ChangeLog:
2002-02-07 Christopher James Lahey <clahey@ximian.com>
* gui/e-tasks.c (e_tasks_setup_view_menus), gui/gnome-cal.c
(gnome_calendar_setup_view_menus): Made these use the new
GalViewMenus stuff.
From mail/ChangeLog:
2002-02-07 Christopher James Lahey <clahey@ximian.com>
* folder-browser.c, folder-browser.h, folder-browser-ui.c,
folder-browser-ui.h
(folder_browser_ui_setup_view_menus,
folder_browser_ui_discard_view_menus): Changed this to use the new
GalViewMenus stuff. Made these exported functions.
* mail-callbacks.c, message-browser.c: Changed these to not pass
the now removed row parameter to message_list_select.
* mail-config.c, mail-config.h (mail_config_folder_to_safe_url):
Refactored this out of mail_config_folder_to_cachename.
* message-list.c, message-list.h (message_list_select): Removed
the row argument. Changed this to use the new function in ETree
for finding the next cursor row that matches a test.
(message_list_construct): Handle a failed construction of the
ETree here.
(message_list_setup_etree, save_tree_state): Don't load or save
the header state. folder-browser-ui.c deals with this now.
From views/ChangeLog:
2002-02-07 Christopher James Lahey <clahey@ximian.com>
* addressbook/galview.xml, calendar/galview.xml, mail/galview.xml,
tasks/galview.xml: Added default-view parameters.
* mail/As_Sent_Folder.galview: New galview.
* mail/Makefile.am, mail/galview.xml: Added As_Sent_Folder
galview.
From widgets/ChangeLog:
2002-02-07 Christopher James Lahey <clahey@ximian.com>
* menus/gal-view-menus.c, menus/gal-view-menus.h
(gal_view_menus_new): Made this take a GalViewInstance instead of
a GalViewCollection. Reworked most of this to utilize the
interfaces provided by GalViewInstance.
svn path=/trunk/; revision=15592
2002-02-06 Jeffrey Stedfast <fejj@ximian.com>
* message-list.c: Removed references to NEEDS_REPLY.
* mail-callbacks.c (mark_as_needing_reply): Removed.
(mark_as_not_needing_reply): Removed.
(toggle_need_reply): Removed.
* folder-browser.c (on_right_click): Remove CAN_MARK_NEEDS_REPLY
stuff, this is going to be implemented in an entirely different
way.
svn path=/trunk/; revision=15585
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
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