2008-03-27 Milan Crha <mcrha@redhat.com>
** Fix for bug #522178
* mail-folder-cache.c: (folder_changed): Put back hack with
checking time of new message in the folder based with last
time of new mail as it was before patch in bug #492702.
svn path=/trunk/; revision=35273
2008-02-22 Milan Crha <mcrha@redhat.com>
** Fix for bug #512776
* Changes below prevents deadlock on start or send/receive.
* mail-send-recv.c: (struct _refresh_folders_msg),
(refresh_folders_exec), (refresh_folders_free),
(receive_update_got_folderinfo): Do not look for active folders in
main thread, rather do it in other thread and free folder info later.
* mail-ops.h: (mail_get_folderinfo):
* mail-ops.c: (struct _get_folderinfo_msg), (get_folderinfo_done),
(get_folderinfo_free), (mail_get_folderinfo):
* mail-folder-cache.h: (mail_note_store):
* mail-folder-cache.c: (struct _update_data), (update_folders),
(mail_note_store):
* mail-component.c: (mc_add_store_done):
The 'done' function returns if we can free folder info or not.
svn path=/trunk/; revision=35071
2008-01-02 Srinivasa Ragavan <sragavan@novell.com>
* em-event.c: (eme_target_free):
* em-event.h:
* em-folder-tree-model.c: (em_folder_tree_model_get_folder_name):
* em-folder-tree-model.h:
* mail-folder-cache.c: (real_flush_updates): Send the folder name
along with the new mail event.
svn path=/trunk/; revision=34744
2007-12-20 Matthew Barnes <mbarnes@redhat.com>
** Fixes bug #362638
* calendar/gui/alarm-notify/alarm-notify.c:
* calendar/gui/alarm-notify/alarm-notify.h:
* calendar/gui/alarm-notify/alarm-queue.c:
Rewrite message passing to use GThreadPool instead of EThread.
* mail/mail-mt.h:
Overhaul the message passing API:
- Define a MailMsg type as the base message struct.
- Define types for the various callback functions.
- Add a priority value to each message (not yet used).
- Add a reference count to each message.
- Define a MailMsgInfo type for the virtual function table.
- Record the size of message sub-types in MailMsgInfo.
- New/changed functions:
mail_msg_new() - Easier to use.
mail_msg_ref() - Increase reference count.
mail_msg_unref() - Decrease reference count.
mail_msg_main_loop_push() }
mail_msg_unordered_push() } Submit MailMsgs to various
mail_msg_fast_ordered_push() } message-processing threads.
mail_msg_slow_ordered_push() }
* mail/mail-mt.c (mail_msg_new):
Use GSlice for memory allocation.
* mail/mail-mt.c (mail_msg_ref), (mail_msg_unref):
New functions increment/decrement a MailMsg's reference count.
* mail/mail-mt.c (mail_cancel_hood_add), (mail_cancel_hook_remove):
Convert the 'cancel_hook_list' from an EDList to a GHookList and
modify the API accordingly.
* mail/mail-mt.c:
Use GThreadPools instead of EThreads.
Use GAsyncQueues instead of EMsgPorts.
* mail/em-composer-utils.c:
* mail/em-folder-browser.c:
* mail/em-folder-properties.c:
* mail/em-folder-tree.c:
* mail/em-folder-utils.c:
* mail/em-folder-view.c:
* mail/em-format-html-print.c:
* mail/em-format-html.c:
* mail/em-subscribe-editor.c:
* mail/em-sync-stream.c:
* mail/importers/elm-importer.c:
* mail/importers/mail-importer.c:
* mail/importers/pine-importer.c:
* mail/mail-component.c:
* mail/mail-folder-cache.c:
* mail/mail-mt.c:
* mail/mail-ops.c:
* mail/mail-ops.h:
* mail/mail-send-recv.c:
* mail/mail-session.c:
* mail/mail-vfolder.c:
* mail/message-list.c:
* plugins/folder-unsubscribe/folder-unsubscribe.c:
* plugins/groupwise-features/share-folder-common.c:
* plugins/exchange-operations/exchange-folder.c:
* plugins/mark-all-read/mark-all-read.c:
* plugins/mailing-list-actions/mailing-list-actions.c:
* plugins/itip-formatter/itip-formatter.c:
* plugins/save-attachments/save-attachments.c:
Use the new MailMsg API for messages.
svn path=/trunk/; revision=34730
2007-11-05 Milan Crha <mcrha@redhat.com>
** Fix for bug #488298
* em-folder-view.c: (EMFolderViewEnable emfv_enable_map[]):
Disable "MessageMarkAsNotJunk" if requested by context.
* mail-folder-cache.c: (update_1folder): Do not count junked
messages into "new" messages in drafts and out box.
* em-popup.c: (em_popup_target_new_select): Disable "MarkAsJunk"
and "MarnAsNotJunk" in drafts and out box.
svn path=/trunk/; revision=34502
2007-07-29 Rob Bradford <rob@robster.org.uk>
** Potential fix for: #453668
* mail-folder-cache.c: (folder_changed):
Deal with the fact that camel_folder_get_message_info can return NULL
and therefore don't try and dereference anything from that pointer.
svn path=/trunk/; revision=33897
2007-06-01 Karl Relton <karllinuxtest.relton@ntlworld.com>
** Fix for bug #311512
* mail-folder-cache.c (folder_changed): Check the added uids for
messages which are not seen/deleted/junk and compare their
received date with the timestamp of the last new-mail notification
- if any are more recent than that, notify the user.
svn path=/trunk/; revision=33614
2006-01-09 Kjartan Maraas <kmaraas@gnome.org>
* em-account-editor.h: s/int/guint/g for 1-bit bitfield.
* em-composer-utils.c: (em_utils_redirect_message): Remove cruft
* em-folder-tree.c: (emft_drop_target): use guint for 1-bit bitfield
and rename a variable with a name clash.
* em-folder-utils.c: (em_folder_utils_rename_folder): Rename var to
avoid name clashes.
* em-folder-view.c: guint for 1-bit bitfields.
* em-folder-view.h: Same as above.
* em-format-html-print.h: Again.
* em-format-html.c: (efh_text_html), (efh_multipart_related): Add comments
* em-format.c: (emf_multipart_alternative): Add comment about using var that
is passed in rather than a local variable.
* em-inline-filter.c: (emif_scan): Remove unused var. Mark code static.
* em-mailer-prefs.h: guint for 1-bit bitfields.
* em-migrate.c: (em_migrate_folder): mark a struct static. remove unused var
* em-subscribe-editor.c: guint for 1-bit bitfield
* em-utils.c: remove unused function
* em-vfolder-rule.c: mark array static
* importers/mail-importer.c: (decode_status): Remove unused code. Use guint
for 1-bit bitfield.
* mail-autofilter.c: (rule_from_message): rename a variable
* mail-component.c: guint for 1-bit bitfield
* mail-folder-cache.c: (update_1folder): remove unused code
* mail-mt.c: mark some structs static
* message-list.c: (message_list_select_uid), (ml_value_to_string),
(ml_tree_value_at), (find_next_undeleted), (build_tree),
(build_flat): Remove unused code and fix some format specifiers.
svn path=/trunk/; revision=31448
2006-01-10 Simon Zheng <simon.zheng@sun.com>
* em-composer-utils.c:
* em-folder-tree-model.c: (em_folder_tree_model_save_state):
* em-format-html.c:
* em-migrate.c: (cp_r), (em_migrate_folder),
(em_migrate_pop_uid_caches_1_4),
(em_migrate_folder_expand_state_1_4),
(em_migrate_folder_view_settings_1_4),
(em_migrate_imap_cmeta_1_4),
(em_migrate_1_4), (emm_setup_initial),
(em_migrate):
* em-popup.c:
* em-utils.c: (em_utils_save_part_to_file):
* mail-component.c: (mail_component_init):
* mail-config.c:
* mail-folder-cache.c:
* mail-mt.c:
* mail-ops.c:
* mail-tools.c: (mail_tool_get_local_movemail_path):
Use e_util_mkdir_hier() instead of e_mkdir_hier().
Use e_util_strstrcase() instead of e_strstrcasea().
use e_strftime() in evolution-data-server/
libedataserver/e-data-server-util.c instead of the copy in
evolution/e-util/e-util.c.
use e_filename_make_safe() in evolution-data-server/
libedataserver/e-data-server-util.c instead of the copy in
evolution/e-util/e-util.c.
use e_utf8_strftime() in evolution-data-server/
libedataserver/e-data-server-util.c instead of the copy in
evolution/e-util/e-util.c.
svn path=/trunk/; revision=31118
2005-12-20 Parthasarathi Susarla <sparthasarathi@novell.com>
** See bug 234008
* em-folder-tree-model.c:
* mail-folder-cache.c:
Make sure that the Draft folder highlights the number of messages in
it
svn path=/trunk/; revision=30891
2005-12-18 Tor Lillqvist <tml@novell.com>
* em-folder-browser.c
* em-folder-view.c
* em-format-html.c
* em-format-html-display.c
* em-mailer-prefs.c
* em-message-browser.c
* em-migrate.c
* em-subscribe-editor.c
* em-sync-stream.c
* em-utils.c
* em-vfolder-editor.c
* em-vfolder-rule.c
* mail-autofilter.c
* mail-component.c
* mail-config.c
* mail-folder-cache.c: Use gstdio wrappers. Construct pathnames of
glade, xml, etspec and png files at run-time. Use
g_filename_{to,from}_uri().
* em-folder-browser.c (emfb_init)
* em-folder-view.c (emfv_finalise)
* em-message-browser.c (emmb_init): As EMFolderView::ui_files now
always is a list of filenames constructed with g_build_filename(),
use g_free() on each list entry before calling g_slist_free() on
the list.
* em-folder-tree-model.c (em_folder_tree_model_load_state): Use
e_xml_parse_file().
* em-migrate.c: Bypass all the code for upgrading from 1.x on Win32.
(emm_setup_initial): Use GDir instead of dirent.
* em-sync-stream.c
* mail-folder-cache.c: Use pthread_equal() to compare pthread_t
values.
* em-vfs-stream.c: No EINPROGRESS or ELOOP on Win32.
svn path=/trunk/; revision=30854
2005-08-23 Not Zed <NotZed@Ximian.com>
* mail-tools.c (mail_tool_uri_to_folder): cast warning away.
* mail-folder-cache.c: include missing header for
e_filename_make_safe.
* em-junk-hook.h: Fix some header includes, fix the include guard
to use the right name.
(EMJunk): Ugh, this is an object, properly derive from it! How
did this work?
* em-junk-hook.c (em_junk_check_junk): fix bool conversion.
* em-format-html-display.c (efhd_bar_popup_position): another
wraning, why this crap isn't in the attachment bar like i said it
should be, i'll never know.
(efhd_xpkcs7mime_viewcert_foad): only define if used.
* em-account-editor.c (emae_defaults_page): attempt to fix parentheses
(emae_security_page): fix conditional compilation warnings.
svn path=/trunk/; revision=30214
2005-08-11 Not Zed <NotZed@Ximian.com>
** See #232499.
* mail-folder-cache.c (rename_folders): rename view meta-data
along with the folder.
svn path=/trunk/; revision=30093
2005-07-21 Not Zed <NotZed@Ximian.com>
* em-account-editor.c (emae_option_entry): if we get a null
default, then set "" on the entry.
(emae_option_entry): set the default value on the url if it
doesn't exist already.
2005-07-20 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c (refresh_folders_desc, refresh_folders_get)
(refresh_folders_got, refresh_folders_free, get_folders)
(receive_update_got_folderinfo, receive_update_got_store): refresh
all the folders manually and directly.
* mail-folder-cache.c (setup_folder): propagate even -1 unread
counts, they get ignored later.
* em-composer-utils.c (emu_handle_receipt_message)
(em_utils_handle_receipt): use getmessagex too, so we can always
clear any error.
* em-folder-view.c (emfv_message_selected_timeout)
(emfv_list_done_message_selected): use getmessagex and do
something meaninful with the error.
* mail-ops.c (mail_get_messagex): added new get message which
returns an exception.
2005-07-19 Not Zed <NotZed@Ximian.com>
* mail-tools.c (mail_tool_uri_to_folder): dont get the service
connected, it will connect if it needs to.
* mail-ops.c (get_folderinfo_get): * em-folder-utils.c
(emft_copy_folders__copy)
(emfu_delete_folders): * em-folder-tree.c
(emft_get_folder_info__get): Always request subscribed folders, if
the backend doesn't implement it it will ignore it.
2005-07-13 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c (mail_autoreceive_init, auto_online): listen to
session online events, and if we are online, trigger an
auto-receive of all auto-check accounts.
2005-07-11 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c (auto_account_commit): force an update
immediately if we're setting up the timeout to start with.
* em-folder-tree-model.c (em_folder_tree_model_set_unread_count):
noop if the unread count < 0.
(em_folder_tree_model_set_folder_info): only set the unread count
if we actually have one.
* em-folder-tree.c (emft_tree_row_expanded): get the folder list
'fast'.
* mail-ops.c (get_folderinfo_get): get the folder list 'fast'.
svn path=/trunk/; revision=29822
2005-01-06 Jeffrey Stedfast <fejj@novell.com>
* mail-folder-cache.c (mail_note_store): Handle the
CamelOfflineStore case just like the CamelDiscoStore case.
* mail-ops.c (prep_offline_do): Since we can't kill off
CamelDisco* (groupwise is using it), we have to handle both
CamelOfflineFolder and CamelDiscoFolder for now.
(set_offline_do): Same.
svn path=/trunk/; revision=28256
2004-07-28 Not Zed <NotZed@Ximian.com>
** See #61958.
* mail-folder-cache.c (real_flush_updates): remove the soreinfo
lookup, it isn't used anywhere anymore.
(mail_note_folder): hook onto the events outside of the lock, and
don't pass the mfi pointer anymore.
(mail_note_store): hook onto the events outside of the lock.
(folder_changed, folder_finalised, folder_renamed): lookup the mfi
if needed, it is no longer passed to the callback.
(unset_folder_info): change unhook calls for new parameters.
svn path=/trunk/; revision=26764
2004-05-28 Jeffrey Stedfast <fejj@novell.com>
* em-folder-tree.c (d): Disable debug here too - all this code has
been working fine.
* em-folder-selector.c (d): Disable debug spew here too (not that
this debug was ever seen since it never hit those conditions).
* mail-folder-cache.c (d): Disable debug here too.
* em-folder-tree-model.c: Disable debug spewage that we don't need
anymore. The amount of debug spewage on the console is getting to
be too much to find anything.
* em-folder-tree.c (emft_expand_node): Use p+1 as the full_name
rather than p. Fixes bug #59187.
svn path=/trunk/; revision=26125
2004-05-26 Not Zed <NotZed@Ximian.com>
* importers/evolution-mbox-importer.c (create_control_fn): set the
default selection to inbox.
* importers/evolution-outlook-importer.c (folder_selected)
(create_control_fn): copied from mbox importer. fixes a crash &
lets you choose the target folder.
2004-05-25 Not Zed <NotZed@Ximian.com>
* mail-component.c (mc_add_local_store_done): removed, now
redundant.
* em-folder-tree.c (em_folder_tree_set_selected): fix for path changes.
* em-folder-tree-model.c (em_folder_tree_model_set_unread_count):
change to use full name rather than path name.
* em-folder-tree-model.h: renamed path_hash to full_hash.
* em-folder-tree-model.c (folder_subscribed): dont use
g_path_get_dirname here, it is os dependent, we want / always.
(full_hash_free): rename from path_hash free.
svn path=/trunk/; revision=26090
2004-05-22 Not Zed <NotZed@Ximian.com>
* mail-tools.c (mail_tool_uri_to_folder): put note_store back in.
Quick hack to fix the issue of folders being opened before we hook
onto folder_created.
* mail-folder-cache.c: remove 'name' from update struct, not used
anymore
svn path=/trunk/; revision=26043
2004-05-18 Not Zed <NotZed@Ximian.com>
* mail-folder-cache.c (folder_changed): no new message test if its
the drafts folder too.
* mail-vfolder.c (vfolder_adduri_desc): use a nicer, account-based
formatter for folder names. Hmm, that was a good waste of time.
For #55412.
svn path=/trunk/; revision=25955
2004-05-18 Not Zed <NotZed@Ximian.com>
* mail-folder-cache.c (folder_changed): don't emit new mail if its
any vfolder, not just vtrash folder. #56350.
* em-folder-view.c (emfv_list_done_message_selected): run
enable_menu's to make sure we're up to date. #58352.
** crappy hacks for #58385.
* em-folder-selection-button.c
(em_folder_selection_button_clicked): leave Ok button for this
selection.
* em-folder-selection.c (em_select_folder): added oklabel here too.
* em-folder-selector.c (em_folder_selector_new)
(em_folder_selector_construct, em_folder_selector_create_new):
Added oklabel- text for ok label.
(em_folder_selector_create_new): Set the ok label to Create.
* em-message-browser.c (emmb_set_message): don't mark message seen
if user has disabled auto-mark seen feature. #58629.
* em-format.c (em_format_part): if we have no content-type header,
then we get no mime-type set, so assume text/plain. #58470.
svn path=/trunk/; revision=25951
2004-04-08 Not Zed <NotZed@Ximian.com>
* mail-folder-cache.c:
(update_1folder): VJUNK_FOLDER's dont exist, they're VTRASH
folders now.
* em-folder-view.c: remove message_changed stuff from camel folder
stuff.
* mail-component.c (mail_component_init): don't setup the search
context here, wait till its requested. Fixes#56672.
2004-04-07 Not Zed <NotZed@Ximian.com>
* mail-component.c (view_changed_cb): hook to update the info
label when the folderview changes.
* em-folder-view.c (emfv_class_init): added 2 signals 'loaded' and
'changed'. For when a folder is set/cleared or when some state
changes.
(emfv_set_folder): emit LOADED signal when we set the folder.
(emfv_list_message_selected): emit changed event.
(emfv_gui_folder_changed): emit changed event.
svn path=/trunk/; revision=25369
2004-04-06 Not Zed <NotZed@Ximian.com>
* em-folder-tree.c (emft_tree_row_expanded): ref the emfoldertree
in our thread message.
(em_folder_tree_set_selected): same.
(emft_get_folder_info__free): unref it.
* mail-folder-cache.c (ping_store): use thread_queued_slow not
thread_queued - we dont care when it runs.
* em-folder-view.c (emfv_set_folder_uri): use thread_new for
getting the folder, we do elsewhere, and it aids interactivity.
svn path=/trunk/; revision=25330
2004-04-05 Not Zed <NotZed@Ximian.com>
** See bug # 56402.
* mail-folder-cache.c (update_folders): if we're cancelled, noop.
(mail_note_store_remove): mark the update data cancelled.
* mail-ops.c
(get_folderinfo_got): Removed the meaningless comment here.
svn path=/trunk/; revision=25312
2004-04-02 Jeffrey Stedfast <fejj@ximian.com>
Fixes bug #37416
* mail-folder-cache.c (update_1folder): Same as below. Also add
vJunk fodlers to the list of folders that we display the total
count for (as discussed on the mailing lists).
* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
Use 'total - deleted' as the count for Outbox rather than just the
total count.
svn path=/trunk/; revision=25305
2004-03-11 Not Zed <NotZed@Ximian.com>
* em-format-html.c (efh_format_header): pass the raw header in
instead of name and value.
(efh_format_headers): if we have specific headers to show, iterate
over all headers and print out all matching ones, so duplicate
headers are properly displayed. Related to #55298.
* em-folder-selector.c (em_folder_selector_construct): dont set
this to be modal. otherwise you can't click on error popups. duh.
2004-03-08 Not Zed <NotZed@Ximian.com>
* em-folder-selection-button.c
(em_folder_selection_button_clicked): don't let the user select
virtual/vtrash folders or non-selectable folders.
* mail-component.c (impl_createControls): disable selection of
non-select rows.
* em-folder-selector.c (em_folder_selector_create_new): exclude
folders with noinferiors set.
* em-folder-tree.c (folder_tree_new): add folder tree arg, hook
onto the selection funciton for the tree selection.
(emft_select_func): selection override function. allow certain
things to be excluded.
(em_folder_tree_set_excluded): api to set what is excluded from
the selectability.
(emft_tree_row_activated): call emft_select_func check to see if
this row is excluded before emitting an activated signal.
* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
save folder info->flags in the tree store.
* mail-folder-cache.c (create_folders): use tail recursion.
(get_folders): tail recurse.
* (*): Fixed for api changes in camel.
svn path=/trunk/; revision=25020
2004-03-03 Not Zed <NotZed@Ximian.com>
* em-inline-filter.c (emif_scan):
* em-folder-tree-model.c (em_folder_tree_model_set_folder_info):
if we have the folder opened already, and its the outbox, then use
the total count instead of unread count. Bit of hack, but copies
mail-folder-cache stuff.
* mail-component.c (mc_add_store): renamed from
mail_component_add_store, internal call. Added a done callback.
(mc_add_local_store): renamed from mc_add_store, callback for
local store.
(mail_component_add_store): call mc_add_store to do the work.
(mc_add_local_store_done): ugh, the target of all this shit - note
all the default folders now they should be setup.
* mail-folder-cache.c (mail_note_folder): clean up the logic a
bit. was gonna do osmething else but it didn't work.
2004-03-02 Not Zed <NotZed@Ximian.com>
* mail-send-recv.c (mail_send): if we're already sending, up the
again count to tell it we need to re-send again.
(receive_done): if we've been asked to run a send again while we
were already running it, run it again to make sure we didn't miss
any new messages. See bug #46839.
* em-mailer-prefs.c (em_mailer_prefs_construct): update
check_incoming_imap changes for merge conflicts.
(settings_changed): i have no idea what these changes jeff did do,
but check_incoming_imap is no longer needed, so i've deleted most
of it.
2004-02-27 Not Zed <NotZed@Ximian.com>
* em-format.c (emf_multipart_encrypted, emf_multipart_signed): If
validation fails, display as multipart/mixed rather than unkown
attachment type, and make the error a little clearer that its an
error. See #52939.
2004-02-26 Not Zed <NotZed@Ximian.com>
* message-list.c (regen_list_regened): NOOP if the folder has
changed.
* mail-session.c (mail_session_check_junk_notify): remove
check_incoming_imap test.
(mail_session_init): "
* evolution-mail.schemas.in.in: Remove check_incoming_imap option.
* mail-config.glade: Remove check incoming imap checkbox.
* em-mailer-prefs.c (em_mailer_prefs_construct): remove
check_incoming_imap test.
(em_mailer_prefs_apply): "
(settings_changed): "
svn path=/trunk/; revision=24944
2004-02-20 Not Zed <NotZed@Ximian.com>
* mail-folder-cache.c (unset_folder_info, setup_folder)
(rename_folders): switch the sense of the no select checks. TEST!
svn path=/trunk/; revision=24813
2004-02-12 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-tree.c (emft_tree_button_press): Updated for em-popup
API change (altho currently passes a dummy value).
* em-popup.c (em_popup_target_new_folder): Check for vTrash/vJunk
by checking the CAMEL_FOLDER_VIRTUAL info flags bit. (perhaps this
flag should be renamed to SPECIAL? VIRTUAL might not have been a
good name). Also changed to check flags & CAMEL_FOLDER_NOSELECT
rather than checking the uri string for a noselect param.
* mail-folder-cache.c (unset_folder_info): Instead of checking for
";noselect" in the uri, check for a CAMEL_FOLDER_NOSELECT flag on
mfi->flags.
(setup_folder): Copy the fi->flags to mfi->flags here.
(rename_folders): Same.
(setup_folder): Check fi->flags for CAMEL_FOLDER_NOSELECT here
instead.
(rename_folders): Same. Also gets rid of a FIXME.
svn path=/trunk/; revision=24784
2004-01-27 Not Zed <NotZed@Ximian.com>
** See bug #53084 and others.
* em-migrate.c (em_migrate): remove the vfolder_revert hack.
* em-composer-utils.c (ask_confirm_for_only_bcc): removed unused
vars.
* mail-tools.c (mail_tool_get_local_inbox): removed, handled by
mail_component_get_folder now.
* mail-component.c (mail_component_*): Changed the api slightly.
Using NULL as the component argument automatically implies you
want the default component.
(em_uri_from_camel, em_uri_to_camel): moved to em-utils.[ch]. Ok
so it isn't namespaced right ... *shrug*.
(mail_component_get_local_inbox): removed.
(mail_component_get_folder): single entry point for getting
standard folders. This is MT-Safe.
(mail_component_get_folder_uri): single entry point for getting
standard folder uri's. This is MT-Safe.
(add_store): removed, moved to mail_component_add_store.
(mail_component_load_store_by_uri): call mail_component_add_store
directly rather than copying its code.
(default_*_folder*): Removed, use accessor methods instead, fixed
all callers.
(setup_local_store): renamed to mc_setup_local_store, use proper
url encoding too. make run-once and thread-safe.
(MailComponentPrivate): Added a lock.
(mail_control_new): exported properly to kill warnings.
(mail_component_init): dont setup_local_store or add accounts
here.
(impl_createControls): setup local store/accounts here.
(mail_component_peek): dont setup vfolder storage here.
(mc_startup): internal function to startup stuff needed for gui
operation.
(setup_search_context): make run-once.
(mail_component_peek_search_context): call setup_search_context
incase it isn't setup yet.
(impl_upgradeFromVersion): remove the local store setup hack.
svn path=/trunk/; revision=24462
2004-01-16 Not Zed <NotZed@Ximian.com>
* mail-folder-cache.c (storeinfo_find_folder_info): change this to
check the store using the provider url_cmp and just lookup the
folder name directly. folder_compare can't be used for uri's,
this stuff was so broken, my fault :(
** See bug #52467.
* em-folder-tree-model.c (sort_cb): handle null path (root?).
* mail-vfolder.c (mail_vfolder_add_uri): map uri to euri before
processing.
(rule_changed): map uri to camel uri before looking up.
(mail_vfolder_delete_uri): handle as euri internally.
(mail_vfolder_rename_uri): "
* mail-autofilter.c (vfolder_rule_from_message): map camel uri to
euri before setting as vfolder source.
svn path=/trunk/; revision=24266
2003-12-10 Jeffrey Stedfast <fejj@ximian.com>
* mail-folder-cache.c (real_flush_updates): Update the unread
count in the model if the folder got new mail.
* em-folder-selection.c (em_select_folder): Updated.
* em-folder-selection-button.c (em_folder_selection_button_clicked): Updated.
* em-folder-tree-model.c (em_folder_tree_model_set_unread_count):
New function to update the unread count for a folder.
* mail-component.c (mail_component_peek_tree_model): Don't ref the
model. Also renamed s/get/peek/
svn path=/trunk/; revision=23910
2003-11-13 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-tree.[c,h]: New folder-tree widget that replaces the
shell's folder-tree widget.
* em-folder-tree-model.[c,h]: New source files subclassing
GtkTreeStore for handling the mess that is drag&drop.
* em-folder-selection-button.c: Ported to use EMFolderTree.
* em-folder-selection.c: Ported to use EMFolderTree.
* em-folder-selector.c: Ported to use EMFolderTree.
* mail-component.c: Ported to use EMFolderTree.
* mail-offline-handler.c (storage_go_online): Updated to not pass
a storage argument.
* mail-folder-cache.c: Removed storage stuff.
* mail-send-recv.c (receive_update_got_store): Don't do EStorage*
stuff anymore.
svn path=/trunk/; revision=23331