* (various places): Update for camel_folder_append_message /
camel_folder_transfer_messages_to API change.
* mail-ops.c (mail_append_mail): Pass the appended_uid to the
callback.
* mail-callbacks.c (composer_save_draft_cb, save_draft_done,
do_edit_messages): Take advantage of the append_message change to
keep track of the UID of the saved draft so that we can delete the
old copy of the draft each time we save a new one. Remove the
FIXME suggesting we should do that, since we're doing it now. :)
svn path=/trunk/; revision=16766
* camel-folder.c (camel_folder_append_message): Add a "char
**appended_uid" argument, for the caller to optionally pass in a
variable to receive the UID of the appended message (if the
provider knows it).
(camel_folder_transfer_messages_to): Likewise, add "GPtrArray
**transferred_uids"
(transfer_messages_to): Update default implementation to handle
transferred_uids.
* camel-disco-folder.c (disco_append_message,
disco_transfer_messages_to): Update for API changes.
* camel-disco-diary.c (camel_disco_diary_replay): Update the
diary's temporary uid->real uid map when replaying appends and
transfers.
* providers/imap/camel-imap-folder.c (imap_append_offline,
imap_append_online, imap_transfer_offline): Pass back the new
UIDs, when requested and available.
(imap_append_resyncing): Pass back the new UIDs when requested and
available. Remove the diary uidmap managing code since
CamelDiscoDiary can handle that itself now.
(imap_transfer_online, imap_transfer_resyncing): Update for new
APIs, but don't actually pass back the new UIDs yet. (It's tricky
since the COPYUID response may not be in the same order as the
input uids.)
* providers/local/camel-maildir-folder.c (maildir_append_message):
Pass back the new UID if requested.
* providers/local/camel-mbox-folder.c (mbox_append_message):
Likewise.
* providers/local/camel-mh-folder.c (mh_append_message): Likewise.
* providers/local/camel-spool-folder.c (spool_append_message):
Likewise.
* camel-digest-folder.c (digest_append_message,
digest_transfer_messages_to): Update for API changes.
* camel-filter-driver.c (camel_filter_driver_filter_message,
do_copy, do_move): Update for API changes.
* camel-vee-folder.c (vee_append_message,
vee_transfer_messages_to): Likewise.
* camel-vtrash-folder.c (vtrash_append_message,
vtrash_transfer_messages_to): Likewise.
svn path=/trunk/; revision=16765
2002-05-13 Not Zed <NotZed@Ximian.com>
* camel-folder-thread.c
(camel_folder_thread_messages_new_summary):
(camel_folder_thread_messages_new): Since the fix for #3357 uses
'order=0' to indicate tree structure nodes, make sure we dont
actually set order=0 for valid messages, otherwise we silently
lose duplicates of the first message (i==0). Fixes#19920.
svn path=/trunk/; revision=16764
2002-05-10 Jeffrey Stedfast <fejj@ximian.com>
* providers/imap/camel-imap-folder.c (imap_get_message): Fetch the
BODYSTRUCTURE rather than BODY since BODY seems to be lacking some
of the data we need. This fixes bug #24131.
svn path=/trunk/; revision=16762
2002-05-10 Jeffrey Stedfast <fejj@ximian.com>
* camel-transport.c (camel_transport_get_type): Might help if we
called camel_transport_class_init.
svn path=/trunk/; revision=16761
2002-05-10 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-canvas.c (grab_cancelled_check): If grabbed_item
is NULL, cancel the timeout.
svn path=/trunk/; revision=16760
2002-05-10 Jeffrey Stedfast <fejj@ximian.com>
* mail-callbacks.c (do_view_message): Update for the new
message-browser api.
* message-browser.c (message_browser_new): A brand new
implementation that just shows the message, none of that next/prev
crap that always caused problems anyway.
svn path=/trunk/; revision=16759
2002-05-10 Christopher James Lahey <clahey@ximian.com>
* gui/component/select-names/Evolution-Addressbook-SelectNames.idl:
Added SimpleCard interface.
* gui/component/select-names/Makefile.am: Added
e-simple-card-bonobo.c and e-simple-card-bonobo.h.
* gui/component/select-names/e-select-names-bonobo.c
(entry_get_property_fn): Added SIMPLE_CARD_LIST arg.
* gui/component/select-names/e-simple-card-bonobo.c,
gui/component/select-names/e-simple-card-bonobo.h: New class to
represent an ECardSimple across Bonobo.
svn path=/trunk/; revision=16757
2002-05-10 Jeffrey Stedfast <fejj@ximian.com>
* mail-config.c (mail_config_add_account): Don't add any shortcuts
here.
(mail_config_remove_account): And don't remove them here. This
code has never worked properly.
* mail-ops.c (save_part_save): Use the exception enum names rather
than '1' since it makes the code clearer.
svn path=/trunk/; revision=16756
* e-shell-shared-folder-picker-dialog.c: Add members `parent' and
`shell' in DiscoveryData.
(shell_view_destroy_callback): Callback for destruction of
->parent; set ->parent to NULL.
(shell_destroy_callback): Callback for the desctruction of the
shell; clean up everything.
(discover_folder): Initialize ->parent and shell, and add the
corresponding destruction handlers.
(shared_folder_discovery_listener_callback): Open the discovered
folder.
(setup_progress_dialog): Renamed from `show_progress_dialog'. Set
up a timeout for displaying the dialog instead of displaying it
right away.
(progress_dialog_show_timeout_callback): Callback for showing the
dialog after the callback.
svn path=/trunk/; revision=16754
* e-shell-shared-folder-picker-dialog.c
(shared_folder_discovery_listener_callback): Updated for
FolderResult instead of DiscoverSharedFolderResult.
* Evolution-Storage.idl: Remove struct DiscoverSharedFolderResult;
we want to just use FolderResult for asyncDiscoverSharedFolder.
svn path=/trunk/; revision=16751
* evolution-test-component.c: Added some tests for the custom
storage.
* evolution-storage.c: New signal DISCOVER_SHARED_FOLDER.
(impl_Storage_asyncXferFolder): Renamed from
impl_Storage_async_xfer_folder.
(impl_Storage_asyncRemoveFolder): Renamed from
impl_Storage_async_remove_folder.
(impl_Storage_asyncCreateFolder): Renamed from
impl_Storage_async_create_folder.
(impl_Storage_asyncOpenFolder): Renamed from
impl_storage_async_open_folder.
(impl_Storage_addListener): Renamed from
impl_Storage_add_listener.
(impl_Storage_removeListener): Renamed from
impl_Storage_remove_listener.
(impl_Storage_asyncDiscoverSharedFolder): New, implementation for
::asyncDiscoverSharedFolder.
(evolution_storage_get_epv): Install the CORBA method here.
(class_init): Set up the "discover_shared_folder" signal here.
(e_marshal_NONE__POINTER_POINTER): Yet Another Marshaller. Die
die die.
* Evolution-Storage.idl (Storage::asyncDiscoverSharedFolder): New
method.
(StorageListener::notifySharedFolderDiscovered): New method.
* e-shell-view-menu.c (command_open_other_users_folder): New,
implementation for the FileOpenOtherUsersFolder verb.
* Makefile.am: Generate stubs and skels for
Evolution::Addressbook::SelectNames as well.
* glade/e-shell-shared-folder-picker-dialog.glade: New.
svn path=/trunk/; revision=16746
* mail-ops.c (transfer_messages_transfer): Simplify. Use
transfer_messages_to instead of picking between copy and move.
Remove vtrash special-casing since it's all in
camel-vtrash-folder.c now. Remove duplicate source == dest check.
* mail-local.c (mail_local_folder_reconfigure): Use
transfer_messages_to instead of copy_messages_to.
svn path=/trunk/; revision=16745
* camel-folder.c (camel_folder_transfer_messages_to): Replace
copy_messages_to and move_messages_to with a single function that
just takes a "delete_originals" flag. Also, use the vtrash
implementation if *either* folder is a vtrash.
(transfer_messages_to): Make this use camel_operation_progress
(previously move_messages_to did but copy_messages_to didn't), and
freeze/thaw the folder(s) if doing multiple messages.
* camel-vtrash-folder.c (vtrash_transfer_messages_to): Update for
move/copy merge. Move the "move messages into vtrash" code here
from mail-ops.c. Now all of the vtrash move/copy special casing is
in camel instead of half of it being here and half in mail/. (This
should also make it so that "Move to Trash" will work in filter
rules.)
* camel-vee-folder.c (vee_transfer_messages_to): Make this just
return an exception, since it will only be called when trying to
move/copy messages from one vfolder to another.
(vee_append_message): Add this too so we get a nicer error message
than the default "unimplemented" one in camel-folder.c.
* camel-digest-folder.c: Replace copy_messages_to and
move_messages_to with transfer_messages_to.
* camel-disco-folder.c: Likewise
* camel-disco-diary.c (camel_disco_diary_log,
camel_disco_diary_replay): replace MOVE/COPY with TRANSFER.
* providers/imap/camel-imap-folder.c (imap_transfer_offline,
imap_transfer_online, imap_transfer_resyncing): Update for
changes. (This ends up being a bit more complicated than it was
before for now, but later disconnected operation changes should
resimplify it.)
* camel-filter-driver.c (camel_filter_driver_filter_message,
do_copy, do_move): Use transfer_messages_to instead of copy.
svn path=/trunk/; revision=16744
2002-05-09 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-search.c (shell_exec): New filter function to pipe
a message to another program.
(run_command): Fixed some bugs to make this work.
svn path=/trunk/; revision=16742
2002-05-09 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-search.c (shell_exec): New filter function to pipe
a message to another program.
svn path=/trunk/; revision=16740
2002-05-09 Jeffrey Stedfast <fejj@ximian.com>
* Makefile.am: Add filter-file.[c,h] to the build.
* filtertypes.xml: Add a "Command" filter rule.
* filter-element.c (filter_element_new_type_name): Add support for
type "command" which uses the new FilterFile widget.
svn path=/trunk/; revision=16739
2002-05-09 Christopher James Lahey <clahey@ximian.com>
* gal/e-text/e-text.c: Switch from gnome_canvas_item_grab to
e_canvas_item_grab.
* gal/widgets/e-canvas.c, gal/widgets/e-canvas.h
(e_canvas_item_grab, e_canvas_item_ungrab): Added these functions.
From gal/e-table/ChangeLog:
2002-05-09 Christopher James Lahey <clahey@ximian.com>
* e-table-item.c, e-table-item.h: Switched from
gnome_canvas_item_grab to e_canvas_item_grab.
svn path=/trunk/; revision=16738
2002-05-09 Jeffrey Stedfast <fejj@ximian.com>
* mail-account-gui.c (mail_account_gui_save): Make sure that even
if the new source url is NULL, that we preserve the enabledness of
the source.
svn path=/trunk/; revision=16737
* e-tree-table-adapter.c
(e_tree_table_adapter_save_expanded_state): Bump file version to 2.
(This will make older versions of gal ignore the file, fixing the
problem where going from evo HEAD to evo 1.0.x makes the folder
tree disappear.) Store the default expanded state in the file now
to prevent this from happening again in the future.
(e_tree_table_adapter_load_expanded_state): Deal with version 2.
If the model's default expansion state doesn't match the saved
state, ignore the save file.
svn path=/trunk/; revision=16736
2002-05-09 Jeffrey Stedfast <fejj@ximian.com>
* filter-file.[c,h]: New filter widgets for choosing files and/or
command-line's (?). Not yet hooked up or anything, just for future
use.
svn path=/trunk/; revision=16735
* e-local-storage.c (construct): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
* evolution-storage.c: New member has_shared_folders in
EvolutionStoragePrivate.
(init): Initialize to FALSE.
(evolution_storage_new): New arg @has_shared_folders.
(evolution_storage_construct): Likewise.
(impl_Storage__get_folderList): Renamed from
impl_Storage__get_folder_list.
(impl_Storage__get_hasSharedFolders): New, implementation for
::hasSharedFolders.
(evolution_storage_get_epv): Install the CORBA method
implementation.
* Evolution-Storage.idl: Make Storage::name a readonly attribute. New attribute Storage::
* component-factory.c (add_storage): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
* gui/component/addressbook-storage.c
(addressbook_get_other_contact_storage): Pass %FALSE as
@has_shared_folders to evolution_storage_new().
svn path=/trunk/; revision=16733
* Evolution-Offline.idl: Rename NotPrepared to notPrepared and
NotSyncing to notSyncing.
* evolution-storage.c (impl_Storage__get_folder_list): Renamed
from impl_Storage_get_folder_list().
* Evolution-Storage.idl: Don't typedef FolderList here. Replace
`getFolderList' method with a readonly attribute.
* gui/e-itip-control.c (get_servers): use
GNOME_Evolution_Storage__get_folderList instead of
GNOME_Evolution_Storage_getFolderList since I have now changed
that to be an attribute instead of a method.
svn path=/trunk/; revision=16732
2002-05-09 Not Zed <NotZed@Ximian.com>
* camel-service.c (camel_service_disconnect): Instead of testing
for SERVICE_CONNECTED, we need to also handle SERVICE_CONNECTING
too, as it will often have setup some details before it failed.
Make it !DISCONNECTED (and !DISCONNECTING for recursive calls,
which happen). Fixes#23782, and maybe also #21604 and many other
random crashes.
svn path=/trunk/; revision=16730
2002-05-08 Not Zed <NotZed@Ximian.com>
* mail-autofilter.c (mail_filter_rename_uri): Changed for
rule_context_rename_uri api changes.
(mail_filter_delete_uri): Same. Also, popup a dialogue similar to
vfolder deleted dialogue to notify the user something has
changed. Partial fix for #18826.
svn path=/trunk/; revision=16720
2002-05-08 Jeffrey Stedfast <fejj@ximian.com>
* providers/pop3/camel-pop3-store.c (pop3_try_authenticate):
camel_pop3_engine_iterate doesn't return the state, it returns -1
on fail, 0 when finished processing request or >0 if more ops are
in the queue, so don't check status against CAMEL_POP3_STATE_OK,
instead check pcp->state against that.
svn path=/trunk/; revision=16719
2002-05-08 Not Zed <NotZed@Ximian.com>
* rule-context.c (rule_context_delete_uri): Changed to return a
GList *, a list of the names of the rules affected by the delete,
fixed all implementors.
(rule_context_rename_uri): Similarly for delete_uri, for
api consistency.
(rule_context_free_uri_list): Util function to free the return
from above.
* filter-context.c (filter_delete_uri): Actually implement it, fix
for #18826, and some related bugs.
svn path=/trunk/; revision=16718
2002-05-07 Chris Toshok <toshok@ximian.com>
* gui/component/addressbook-config.c
(addressbook_config_control_new): oops, add the NULL back at the
end of possible_types.
svn path=/trunk/; revision=16714
2002-05-07 Jeffrey Stedfast <fejj@ximian.com>
* camel-object.h: s/class/klass for arguments so that c++
developers don't complain later.
svn path=/trunk/; revision=16712
2002-05-07 Chris Toshok <toshok@ximian.com>
* gui/component/addressbook-config.c (addressbook_ldap_init):
bleah, need to pass the GtkWindow here so we can pop up the a
modal parented dialog (gtk modal dialogs suck?).
(addressbook_ldap_auth): same.
(addressbook_root_dse_query): same.
(do_ldap_root_dse_query): same.
(addressbook_config_control_new): add "ldap-contacts" to the list
of possible types.
svn path=/trunk/; revision=16711