2001-10-30 <NotZed@Ximian.com>
* subscribe-dialog.c (fe_cancel_op_foreach): Argh!!! Dont free the
async op data here, the async op is still running and will access
it! Just try to cancel it and mark it as cancelled (id == -1)
(fe_done_subscribing): Only remove outselves from the hash table
if we're not cancelled. The handle should always be set here,
since this code runs in the gui thread.
* message-list.c (on_cursor_activated_idle): If nothing
selected/cursor not activated, then select no message.
* mail-folder-cache.c (update_1folder): Make the trash count
optional on EVOLUTION_COUNT_TRASH, becuase some lusers are just
too stupid to understand what its for.
* component-factory.c (storage_xfer_folder): Return slightly
better error codes for copying folders, since its not implemented
yet.
* mail-vfolder.c, mail-local.c, mail-folder-cache.c,
message-list.c component-factory.c, mail-ops.c,
subscribe-dialog.c, mail-session.c: d() out some debug printfs,
w() out some warnings.
* folder-browser-ui.c (folder_browser_ui_add_message): Fix typo,
Resent->Resend.
svn path=/trunk/; revision=14412
2001-10-19 <NotZed@Ximian.com>
* mail-folder-cache.c (store_finalised): Free folders_uri.
(real_folder_deleted): If folder is deleted, remove it from the
hashtables.
* subscribe-dialog.c (get_short_folderinfo_get): Remove the
register/unregister, they're already done above us.
* mail-vfolder.c
(mail_vfolder_delete_uri): Dont do any work to remove the actual
folder from the vfolder (we'd have to look it up first), let the
vfolder remove it itself. Just update the rules.
svn path=/trunk/; revision=13787
2001-10-17 Jeffrey Stedfast <fejj@ximian.com>
* subscribe-dialog.h (subscribe_dialog_show): Helper macro.
* subscribe-dialog.c (subscribe_dialog_run_and_close): Removed.
* mail-callbacks.c (check_send_configuration): Don't use
gnome_dialog_run_and_close() here, we can easily get away with
just using a gtk_widget_show().
(providers_config): Don't use a gnome_dialog_run_and_close() here
either. No longer need to use e_gnome_dialog utils.
(manage_subscriptions): Don't run_and_close().
svn path=/trunk/; revision=13732
2001-09-19 <NotZed@Ximian.com>
* General cleanup of mail debug printfs.
* mail-folder-cache.[ch]: Completely rewritten. Removed all calls
to the old code everywhere they were used. Nuff said.
* folder-browser.h: Add shell_view to folder_browser & api to set
it.
* folder-browser-factory.c (control_activate): Set the shell-view
on the folder_browser.
(control_deactivate): And clear it here.
* folder-browser.c (folder_browser_destroy): Unhook from changed
events on the folder before giving it away.
(got_folder): Hook onto the folder-changed events.
(folder_changed): Event hook proxy for folder_changed events
(main_folder_changed): And the main code version.
(update_status_bar): And the one that actually does the work.
(on_selection_changed): Also call update_status_bar() to update
the selection count.
(folder_browser_set_shell_view): Implement function to set the
shell_view on the folder_browser.
(folder_browser_destroy): Release the shell_view here too.
* mail-tools.c (mail_tool_uri_to_folder): Dont 'note' the new
folder if its from a file: url, this is handled by hte local store
(yeeruughck).
* mail-local.c (mls_init):
(free_info):
(mls_finalise): Setup init/finalise funcs for the folderinfo hash.
(local_storage_removed_folder_cb): re-enable.
2001-09-18 <NotZed@Ximian.com>
* mail-local.c (MailLocalStore): Add a hash table to store
uri<>folderinfo data.
(mail_local_store_add_folder): Add a new folderinfo to our hash.
(mail_local_store_remove_folder): Remove a folder by uri.
(storage_listener_startup): Add this store to those monitored by
the folder tree.
svn path=/trunk/; revision=12974
2001-09-14 Jeffrey Stedfast <fejj@ximian.com>
* subscribe-dialog.c (fe_root_value_at): Return the cached value
of camel_service_get_name so that we don't leak memory.
(fe_real_value_at): Don't strdup the node's name.
(folder_etree_construct): Set the service_name.
(fe_destroy): Free the service_name.
svn path=/trunk/; revision=12849
2001-09-14 Jeffrey Stedfast <fejj@ximian.com>
* subscribe-dialog.c (store_data_new): Added a refcount variable
so set the refcount to 1.
(sd_got_store): Unref the store-data.
(store_data_async_get_store): Ref the store-data.
(store_data_ref): New function.
(store_data_unref): New function.
(subscribe_dialog_destroy): Instead of freeing the store-data
here, unref it instead. We may just have an async function
running. Set the callback function to NULL so that when the
(remaining) async functions finish, they become no-ops.
svn path=/trunk/; revision=12847
2001-09-13 Jeffrey Stedfast <fejj@ximian.com>
* subscribe-dialog.c (get_short_folderinfo_desc):
(get_short_folderinfo_get):
(get_short_folderinfo_got):
(get_short_folderinfo_free):
(subscribe_get_short_folderinfo): Modified to take a FolderETree
instead of a CamelStore (since the CamelStore is inside the
FolderETree anyway) so that we could ref the ETree to prevent a
race condition. Should fix bug #9827.
svn path=/trunk/; revision=12808
2001-09-10 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (mail_generate_reply): Don't use
new_with_sig_file, that function no longer exists.
(forward_get_composer): Same here.
svn path=/trunk/; revision=12754
2001-08-16 Peter Williams <peterw@ximian.com>
* subscribe-dialog.c (fe_got_children): Sort the nodes here...
(fe_sort_folder): ... using this function.
* folder-browser-ui.c (folder_browser_ui_message_loaded): Check for uic
== NULL. I'm not sure how this could happen, but...
svn path=/trunk/; revision=12130
2001-08-16 Peter Williams <peterw@ximian.com>
(fe_node_to_shell_path): Use node->name and node->full_name to generate
the the shell path of this item. Don't need to escape the URL, and
handle cases when dir_sep != '/'
(fe_done_subscribing): Use fe_node_to_shell_path instead of the CamelURL.
Third time's the charm...
svn path=/trunk/; revision=12101
2001-08-16 Peter Williams <peterw@ximian.com>
* subscribe-dialog.c (fe_done_subscribing): Instead of hackfully
getting the path, use a CamelURL so that escaping is handled. Silly
me.
svn path=/trunk/; revision=12090
2001-08-08 Peter Williams <peterw@ximian.com>
* subscribe-dialog.c (sc_selection_changed): New function. Set the
sensitivity of the subscribe buttons based on whether any folders
are selected.
(menu_item_selected): If getting the widget for the first time,
hook up sc_selection_changed.
svn path=/trunk/; revision=11800
2001-08-07 Peter Williams <peterw@ximian.com>
* Revert Jeff's changes to subscribe-dialog.[ch]. It's not a widget,
it's an object from which you can obtain a widget.
svn path=/trunk/; revision=11755
2001-08-07 Jeffrey Stedfast <fejj@ximian.com>
* subscribe-dialog.c (subscribe_dialog_new): This should return a
GtkWidget not a GtkObject.
* mail-session.c (get_filter_driver): Update to use user's logging
preferences.
* mail-accounts.c (filter_log_toggled): New.
(filter_log_path_changed): New.
(construct): Get and attach signals to the filter logging option
widgets.
* mail-config.c (config_read): Read in filter logging options.
(mail_config_write_on_exit): Save filter logging options.
(mail_config_set_filter_log_path): Implemented.
(mail_config_get_filter_log_path): Implemented.
(mail_config_set_filter_log): Implemented.
(mail_config_get_filter_log): Implemented.
svn path=/trunk/; revision=11751
2001-08-07 Peter Williams <peterw@ximian.com>
* subscribe-dialog.c (fe_destroy): Unref the e_storage since lookup_store
gives us a ref.
svn path=/trunk/; revision=11748
2001-08-07 Peter Williams <peterw@ximian.com>
* subscribe-dialog.c (folder_etree_construct): Move fe_create_root_node
farther down, so we can check for its children without problems.
(storage_tree_path): Removed, this was broken.
(subscribe_get_short_folderinfo): Use the queued thread instead of the
new thread.
(subscribe_do_subscribe_folder): Same.
(ftree_node_new_root): Don't create the path anymore; it was broken
and there's a better way to get it now.
(fe_got_children): Remove some debugging output.
(fe_check_for_children): Here too.
(fe_done_subscribing): Get the path from the URI instead of the ftree_node.
(_SubscribeDialogPrivate): Add all of our useful widgets as members.
(sc_refresh_pressed): Don't clear the search... that makes no sense now.
(sc_search_activated): Don't set the filter radio button as active now;
we use sensitivity instead.
(sc_all_toggled): Make the search entry insensitive.
(sc_filter_toggled): Make the search entry sensitive.
(kill_default_view): New function. Gets rid of the default view stuff and
makes all the widgetry sensitive.
(menu_item_selected): Check if we moved off of the default view and, if so,
call kill_default_view().
(subscribe_dialog_construct): Initialize our new private widget members, and
by default insensitize most of the buttons because they make no sense in the
default view.
svn path=/trunk/; revision=11736
2001-08-06 Peter Williams <peterw@ximian.com>
* subscribe-dialog.[ch]: Reimplement to be asynchronous and pretty,
with progressive folder loading and all sorts of wonderful
improvements.
* mail-callbacks.c (manage_subscriptions): Change to reflect API
update.
* component-factory.c (mail_load_storages): Don't add the storage
if it has been disabled.
* Makefile.am (etspec_DATA): Add subscribe-dialog.etspec.
(glade_DATA): And the glade file.
* subscribe-dialog.etspec: New file, break out the specification
from inside the subscribe-dialog.c
* subscribe-dialog.glade: Update this, actually use it now.
svn path=/trunk/; revision=11706
2001-07-02 Sam Creasey <sammy@oh.verio.com>
* mail-account-editor-news.c: Added an MailAccountEditorNews, for
NNTP configuratuion. Based on MailAccountEditor, but stripped.
* Makefile.am: added mail-account-editor-news.c and
mail-account-editor-news.h to SOURCES if ENABLE_NNTP is defined.
* mail-accounts.c (load_news): Moved this function, and fixed some
slight brokenness.
(news_edit): Added functional code using MailAccountEditorNews
(news_add): Added functional code using news_edit after
allocation.
* mail-config.glade: news_editor_window widget added. Used by
MailAccountEditorNews.
* mail-display.c (save_data_cb): Store the pathname used when
saving messages so that the next save box will default to the
previous path.
* message-browser.c (message_browser_new): add signal handler for
size_allocate on the message browser. Thus new windows are size
as they were last allocated.
(message_browser_size_allocate_cb): handler to store allocations.
* message-list.c (message_list_setup_etree): connect to the
info_changed signals for the state of the message_list->tree.
Save the folder state to disk, so that when additional
message_lists are created, they are consistant. e.g. the next
buttons do the same thing in the browser, and in the message
viewer after changing sorting options.
* subscribe-dialog.c (build_tree): freeze sc->folder model while
building the tree. Not doing so takes a very long time over 40000
newsgroups.
svn path=/trunk/; revision=10719
2001-07-01 Chris Toshok <toshok@ximian.com>
* subscribe-dialog.c (subscribe_dialog_gui_init): the FolderSearch
control is in a different dockitem now.
svn path=/trunk/; revision=10669
2001-06-27 Peter Williams <peterw@ximian.com>
* configure.in (gal): Bump required gal version for new accessors
in ETree.
mail:
2001-06-27 Peter Williams <peterw@ximian.com>
* folder-browser-ui.c: Uncomment EditSelectThread. Yaay!
* mail-callbacks.c (select_thread): New function. Self-explanatory
name. Implementation is a little hairy.
* mail-callbacks.h: Prototype it here.
* mail-callbacks.c (invert_selection): Here too.
(select_all): Here too.
* subscribe-dialog.c (subscribe_select_all): Update to use new
ETree accessors.
(subscribe_invert_selection): Here too.
calendar:
2001-06-27 Peter Williams <peterw@ximian.com>
* conduits/*/Makefile.am (INCLUDES): More srcdir != builddir
fixes.
svn path=/trunk/; revision=10544
* folder-browser-factory.c: #include
"evolution-shell-component-utils.h" rather than "e-gui-utils.h"
for e_pixmaps_update.
* subscribe-dialog.c: Likewise.
svn path=/trunk/; revision=10019
* message-list.c: #include <camel/camel-file-utils.h>
* mail-ops.c (get_folderinfo_get):
* subscribe-dialog.c (build_tree): Update for
camel_store_get_folder_info prototype change.
* mail-format.c (handle_text_plain_flowed): Improve more on the
fix from the other day: the first level of indentation adds blank
lines, but further levels don't...
svn path=/trunk/; revision=9660
2001-04-12 Christopher James Lahey <clahey@ximian.com>
* message-list.c (e_mail_address_new): Updated this function to be
a correct full ordering.
(ml_has_get_node_by_id, ml_get_node_by_id): Implemented these
functions.
(find_next_undeleted): Changed this to find next sorted undeleted
message. Also, changed it so that if the current message is not
deleted, it returns NULL.
(build_tree, build_flat): Changed these to only set the cursor if
the cursor is changed.
* subscribe-dialog.c: Changed this to pass NULL, NULL for
has_get_node_by_id and get_node_by_id.
svn path=/trunk/; revision=9290
Guided by Jacub Stener's mail, where he explaned which icons were renamed or
added, I added a bunch of new icons to menus, fixed renamed ones. Changed Trash
and Executive summary folder type icons. Fixed art/Makefile.am for these
changes.
Also, pulled icon cache from mailer and moved it to e-util/e-gui-utils.h, made
all components and dialogs use cache and not load pixmaps every time.
Accidentally got a couple of includes fix in, but they won't break anything.
svn path=/trunk/; revision=9092
2001-03-29 Kjartan Maraas <kmaraas@gnome.org>
* *.*: Cleaned up #includes. Remove unneccesary includes of
<gnome.h>, <gtk/gtk.h>, <bonobo.h> and replaced with more
fine grained headers where needed. Also marked a bunch of
strings for translations and added some missing prototypes.
svn path=/trunk/; revision=9025
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* configure.in: Bumped gal requirement to 0.5.99.8.
From addressbook/ChangeLog:
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* Merged branch:
2001-03-14 Christopher James Lahey <clahey@ximian.com>
* gui/widgets/e-minicard-view.c: Call
e_selection_model_simple_insert_rows and
e_selection_model_simple_delete_rows instead of
e_selection_model_simple_insert_row and
e_selection_model_simple_delete_row.
End of branch
From mail/ChangeLog:
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* Merged e-tree-rework-branch:
2001-03-18 Christopher James Lahey <clahey@ximian.com>
* message-list.c: Added has_save_id and get_save_id methods.
* subscribe-dialog.c: Added arguments for
e_tree_memory_callbacks_new of get_save_id and has_save_id to
NULL.
2001-03-16 Christopher James Lahey <clahey@ximian.com>
* message-list.c: Added a call to
e_tree_memory_set_expanded_default to TRUE. Removed all calls to
set_expanded on nodes while the tree is frozen since this fails
miserably now.
2001-03-13 Christopher James Lahey <clahey@ximian.com>
* message-list.c (message_list_get_layout): Turned off draw-grid.
2001-03-09 Christopher James Lahey <clahey@ximian.com>
* folder-browser-factory.c, folder-browser.c, message-list.c,
message-list.h, subscribe-dialog.c, subscribe-dialog.h,
mail-callbacks.c: Converted these all to use ETree instead of
ETable.
End of branch
From shell/ChangeLog:
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* Merged e-tree-rework-branch:
2001-03-19 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (etree_get_save_id): Made "root" detection
deal properly with removed nodes.
2001-03-18 Christopher James Lahey <clahey@ximian.com>
* e-shell-view.c (e_shell_view_save_settings): Added some unused
code to implement saving of the expanded state.
* e-storage-set-view.c: Added has_save_id and get_save_id methods.
2001-03-13 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c (ETREE_SPEC): Set draw-grid here to false.
2001-03-09 Christopher James Lahey <clahey@ximian.com>
* e-storage-set-view.c, e-storage-set-view.h: Chaned this to use
ETree instead of ETable.
End of branch
svn path=/trunk/; revision=8839
2001-02-21 Not Zed <NotZed@Ximian.com>
* mail-callbacks.c (composer_postpone_cb): Fix for api changes to
append_mail.
* Makefile.am (evolution_mail_SOURCES): Removed mail-threads.[ch].
* mail-threads.[ch]: Removed.
* subscribe-dialog.c (subscribe_do_get_store): Chagned to use new
thread stuff. This is really getting boring.
(subscribe_do_subscribe_folder): Changed to use new thread stuff.
Last one at last, phew.
* session.c (register_callback): Changed to use new thread stuff.
YUCK. I dropped some functionality, now the timeout callback
return is ignored, so basically it keeps running till finished.
* mail-ops.c (mail_operation_run): Removed, no longer used/needed.
(mail_do_append_mail): Changed to use new thread stuff.
(mail_do_transfer_messages): ditto.
* mail-local.c (local_storage_new_folder_cb): Use new thread
stuff, also only run synchronous for this operation.
(mail_local_reconfigure_folder):
(reconfigure_clicked): Changed to use new mail thread stuff.
* mail-config.c (mail_config_check_service): Changed to use new
thread stuff.
svn path=/trunk/; revision=8314
2001-02-15 Jeffrey Stedfast <fejj@ximian.com>
* mail-ops.c (do_scan_subfolders): Use mail_storage_create_folder
* mail-callbacks.c (mail_storage_create_folder): Convenience
function so we can keep all the evolution_storage_add_new_folder()
code in one place as much as possible.
* subscribe-dialog.c (recursive_add_folder): Use 'name' rather
than the no-description bs since that's what all the other places
do.
* mail-callbacks.c (folder_created): New callback to handle the
"folder_created" signal - handles CamelFolderInfo's recursively.
(folder_deleted): Same but for "folder_deleted".
* component-factory.c (storage_create_folder): Instead of doing
the evolution_storage_new_folder() stuff by hand, pass it off to
the new callback: folder_created(). At some point this will be
unecessary as we'll attach this callback to the "folder_created"
signal.
svn path=/trunk/; revision=8247
2001-01-26 Jeffrey Stedfast <fejj@ximian.com>
* subscribe-dialog.c (populate_store_foreach): Check for a NULL
service->url as we obviously can't subscribe to folders on a
non-existant mail source :-)
(subscribe_do_get_store): Check for a NULL url here too, not that
we should need it anymore (due to the above fix) but it doesn't
hurt. Also, should we wait on the thread? Probably doesn't matter.
svn path=/trunk/; revision=7844
* mail-tools.h: s/filter-driver.h/camel-filter-driver.h/ and
update first arg of mail_too_filter_get_folder_func
* mail-tools.c (mail_tool_filter_get_folder_func): Update first
arg to CamelFilterDriver *
* mail-send-recv.c (receive_status):
* mail-ops.c (send_queue_send): s/FILTER/CAMEL_FILTER/
* mail-callbacks.c: Remove filter-driver.h include
* mail-accounts.c: Put the news functions inside #ifdef
ENABLE_NNTP to prevent warnings about unused statis functions.
* subscribe-dialog.c (subscribe_folders, unsubscribe_folders,
subscribe_refresh_list): Update prototype to match BONOBO_UI_VERB.
(populate_store_list): add a de-constifying cast
svn path=/trunk/; revision=7708
* subscribe-dialog.c (recursive_add_folder): New function to add a
folder and any parents of it that don't yet exist. Fixes bugzilla
#1028.
svn path=/trunk/; revision=7658
2001-01-12 Jeffrey Stedfast <fejj@ximian.com>
* mail-config.glade: Anna's dialogs.
* mail-config.c (mail_config_get_account_by_address):
Removed. Danw and I decided on setting a X-Evolution-Transport
header on messages going to the Outbox so we can later guess which
transport to use when sending it.
* mail-account-editor.c (apply_changes): Update to some day be
able to support SSL.
(construct): Update for Anna's dialogs...
* subscribe-dialog.c (populate_store_list): Updated to reflect
past changes to the mail-config API.
svn path=/trunk/; revision=7461
had changed it to use ->full_name instead of ->name because that's
what camel_store_subscribe_folder needed. So we need to have
*both* names available, one for Camel, one for the shell.
svn path=/trunk/; revision=7181
* subscribe-dialog.c (setup_subscribe_folder): Use info->name, not
input->full_name. Fixes#1029 in bugzilla.helixcode.com.
svn path=/trunk/; revision=7180
* subscribe-dialog.c (folder_toggle_cb): Update this for the new
signal handler prototype. Fixes the crash on double-click.
svn path=/trunk/; revision=7059
2000-12-08 Christopher James Lahey <clahey@helixcode.com>
* folder-browser.c: Connect to signals on the ETable instead of
the ETableScrolled.
* subscribe-dialog.c: Used the e_table_scrolled_get_table function
instead of accessing the variable directly.
svn path=/trunk/; revision=6873
2000-12-04 Jeffrey Stedfast <fejj@helixcode.com>
* subscribe-dialog.c (setup_subscribe_folder): Use info->full_name
rather than info->name so that we get the namespace part of the
folder path as well.
svn path=/trunk/; revision=6783
2000-11-13 Jeffrey Stedfast <fejj@helixcode.com>
* subscribe-dialog.c (subscribe_do_subscribe_folder): Take a
'subscribe' argument so that this can function as a subscribe AND
unsibscribe method.
(describe_subscribe_folder): Updated.
(do_subscribe_folder): Updated.
(cleanup_subscribe_folder): Updated.
(subscribe_folder_info): Pass along a TRUE as the 'subscribe'
param.
(unsubscribe_folder_info): Pass along a FALSE as the 'subscribe'
param.
svn path=/trunk/; revision=6565
and do a first cut at folder tree highlighting (for IMAP/news
only).
* mail-ops.c (do_fetch_mail): For imap (sigh, we *still* shouldn't
be hardcoding that), rescan the store's folder tree, rescan each
changed folder for new messages, and update the shell folder tree.
(do_scan_subfolders): Update for component-factory.c changes, and
set folder display names and highlights appropriately when
building the storage.
* component-factory.c (add_storage): Make this static (was
mail_add_new_storage). Use camel_service_get_name for the name
rather than url->host. (Among other things, this lets you use a
single machine as both an IMAP server and a news server.)
(mail_lookup_storage): Hash storages based on their CamelStore
rather than the URL.
(factory_destroy): Disconnect each of the CamelStores in the
storages_hash.
* subscribe-dialog.c (cleanup_subscribe_folder):
* mail-vfolder.c (vfolder_refresh): Pass "highlighted" flag to
evolution_storage_new_folder
svn path=/trunk/; revision=6342
2000-11-01 Chris Toshok <toshok@helixcode.com>
* subscribe-dialog.h: add fields search_entry and search_top.
* subscribe-dialog.c: add mail-ops.c style async operations for
getting the store (to remove deadlock in the case where a auth
dialog is dismissed at startup and then the subscribe dialog is
brought up), and subscribing/unsubscribing to folders. One case
remains, that is getting the list of all folders.
(subscribe_search): flesh out this function
(build_tree): use the search_top field so we can search for
groups/folders.
(subscribe_dialog_destroy): free search_top.
(subscribe_dialog_construct): init search_top.
svn path=/trunk/; revision=6331