aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-session.c
Commit message (Collapse)AuthorAgeFilesLines
* gnome_pixmap -> gtkimage. (construct): gtk_clist -> gtk_tree_view, setupNot Zed2002-12-021-81/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-27 Not Zed <NotZed@Ximian.com> * message-tag-followup.c (construct): gnome_pixmap -> gtkimage. (construct): gtk_clist -> gtk_tree_view, setup columns. They dont size well :-/ (message_tag_followup_append_message): Append using model, remove clist stuff. (construct): Show date edit (glade bugs?) * folder-browser.c (folder_browser_class_init): gtk_marshal -> g_cclosure_marshal (setup_popup_icons): gnome_pixmap -> gtk_image. (on_right_click): gtk_pixmap -> gtk_image. * mail-accounts.c (account_delete_clicked): removed #if 0'd out code. * mail-send-recv.c (receive_done): remove FIXME and extra unref. * mail-session.c (request_password): Removed #if 0'd out stuff. * mail-vfolder.c (new_rule_clicked): proper cast for g_object_get_data. * mail-local.c (reconfigure_response): cast for g_object_get_data. * mail-account-editor.c (construct): GNOME_DIALOG -> GTK_DIALOG. * *.[ch]: re-ran fix.sh for e_notice change * mail-callbacks.c (save_msg_ok): g_object_get_data + gtk_object_remove_no_notify -> g_object_steal_data. (find_socket): gtk_container_children -> gtk_container_get_children (edit_msg): gnome_*_dialog -> gtk_message_dialog. (resent_msg): " (search_msg): " (confirm_goto_next_folder): gtkmessagedialogised (even if not used). (confirm_expunge): gtkmessagedialogised (filter_edit): " (do_mail_print): e_notice -> gtk_message_dialog. (are_you_sure): removed e_gnome_ok_cancel_dialog crap, replaced with a gtk dialog. (are_you_sure): gtkmessagedialogised. (edit_msg_internal): Dont free uids array, are_you_sure() free's it. (resend_msg): Same. (check_send_configuration): Use e_notice for stuff. Sigh, here we go again ...! (e_question): A utility function to ask a question, potentially with 'dont ask again' as well. (configure_mail): use e_question to save code. Here we go again, again ... (ask_confirm_for_unwanted_html_mail): " (ask_confirm_for_only_bcc): " (ask_confirm_for_only_bcc): " (composer_get_message): Use e_notice. (composer_save_draft_cb): Use e_question (edit_msg): use e_notice, & change to an ERROR. (resend_msg): same. (save_msg_ok): Properly initialise ret to OK, and use e_question, and use access() to determine existance/write access rather than stat, display an error if we can't write to a file that exists, and print the filename in all dialogues. (confirm_goto_next_folder): Use e_question. (confirm_expunge): use e_question. (filter_edit): Use e_notice. (do_mail_print): use e_notice. svn path=/trunk/; revision=18974
* fix warning message, outlook->mbox.Not Zed2002-11-191-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-19 Not Zed <NotZed@Ximian.com> * importers/evolution-mbox-importer.c (mail_importer_module_init): fix warning message, outlook->mbox. * importers/Makefile.am: fix serverdir to point to $libdir/bonobo/servers. * mail-callbacks.c (addrbook_sender): add type to bonobo_widget_set_property. * mail-vfolder.c (vfolder_editor_response): dont unref after destroy. * mail-session.c (pass_response): dont unref aftrer destroy. * mail-local.c (reconfigure_response): dont unref after destroy. * mail-display.c (launch_cb): dont unref after destroy. (launch_cb): " (drag_data_get_cb): " (html_button_press_event): add type to bonobo_widget::set_property * mail-config.c (mail_config_check_service): dont unref after destroy. * component-factory.c (send_receive_cb): dont unref after destroy. (request_quit): " * mail-signature-editor.c (mail_signature_editor): Use version 3.0 of gtkhtml editor interfaces. (do_exit): dont unref after destroy. (format_html_cb): Add type to bonobo_widget::set_property. svn path=/trunk/; revision=18837
* Use g_object_weak_ref rather than connecting to destroy.Jeffrey Stedfast2002-11-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 2002-11-14 Jeffrey Stedfast <fejj@ximian.com> * mail-accounts.c (account_edit_clicked): Use g_object_weak_ref rather than connecting to destroy. (account_add_clicked): Same. * mail-callbacks.c (addrbook_sender): Make this use g_object_weak_notify also. (subscribe_dialog_destroy): Add NULL guards here since I think we really do want to connect to the "destroy" signal in the function that connects us to that signal. * mail-config-factory.c (config_control_factory_cb): Same. * mail-display.c (save_part): Here too. (make_popup_window): And here. * mail-send-recv.c (build_dialogue): Same here. * mail-summary.c (create_summary_view): Use g_object_weak_notify instead of connecting to the destroy signal. svn path=/trunk/; revision=18764
* Do not #include <libgnome/gnome-defs.h>. Likewise. Likewise. Likewise.Ettore Perazzoli2002-11-141-1/+0
| | | | | | | | | | | | | | | | | * mail-format.c: Do not #include <libgnome/gnome-defs.h>. * mail-importer.c: Likewise. * mail-mt.c: Likewise. * mail-ops.c: Likewise. * mail-search-dialogue.c: Likewise. * mail-session.c: Likewise. * mail-vfolder.c: Likewise. * message-tag-followup.c: Likewise. * main.c: Likewise, and <libgnomeui/gnome-init.h>. * mail-callbacks.c: Do not #include <libgnome/gnome-paper.h>. (do_mail_print): Remove the GnomePaper local variable. svn path=/trunk/; revision=18739
* Commented out stuff that doesn't build yet. Also fixed idl build rule.Not Zed2002-11-121-93/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Add the new-mail-notify rule to the filter driver before adding the userJeffrey Stedfast2002-10-161-10/+14
| | | | | | | | | | | | | | | 2002-10-15 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (main_get_filter_driver): Add the new-mail-notify rule to the filter driver before adding the user defined filter rules so that we can be sure that the new-mail-notify rule gets invoked. Fixes bug #32328. * mail-composer-prefs.c (mail_composer_prefs_new_signature): Make sure that name[0] cannot ever be NULL. Should maybe fix bug #32230. svn path=/trunk/; revision=18374
* translate prompt from utf8 to gtk widget. #31365.Not Zed2002-09-301-7/+5
| | | | | | | | | 2002-09-30 Not Zed <NotZed@Ximian.com> * mail-session.c (request_password): translate prompt from utf8 to gtk widget. #31365. svn path=/trunk/; revision=18258
* Fix for filter driver api change.Not Zed2002-09-191-1/+1
| | | | | | | | | 2002-09-19 Not Zed <NotZed@Ximian.com> * mail-session.c (main_get_filter_driver): Fix for filter driver api change. svn path=/trunk/; revision=18114
* Don't bother overloading the timeout virtual methods since they don'tJeffrey Stedfast2002-08-221-2/+0
| | | | | | | | | | | | 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
* If we are not in interactive mode, don't display error dialogs.Jeffrey Stedfast2002-08-061-7/+13
| | | | | | | | | | | | | | | | | | 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
* (request_password): Left-align the check button'sEttore Perazzoli2002-07-301-0/+1
| | | | | | label. svn path=/trunk/; revision=17637
* (request_password): Add an accelerator for theEttore Perazzoli2002-07-301-5/+16
| | | | | | "Remember this password" checkbox. svn path=/trunk/; revision=17631
* Update to take argc and argv arguments since this is the new definitionJeffrey Stedfast2002-07-251-1/+2
| | | | | | | | | | | | | 2002-07-25 Jeffrey Stedfast <fejj@ximian.com> * mail-ops.c (mail_execute_shell_command): Update to take argc and argv arguments since this is the new definition for the CamelFilterDriverShellFunc. * mail-session.c (main_get_filter_driver): Updated for the renamed function. svn path=/trunk/; revision=17585
* Account for the case that when a disco store is "online" but actuallyPeter Williams2002-07-151-0/+4
| | | | | | | | | | | | | | | | 2002-07-15 Peter Williams <peterw@ximian.com> * mail-offline-handler.c (service_is_relevant): Account for the case that when a disco store is "online" but actually offline and we're going online, we should actually connect it. * component-factory.c (mail_load_storages): Always set auto_connect to FALSE, same reason as below. * mail-session.c (mail_session_init): Initialize our session to not be online, since the shell will tell us to go online if we need to. svn path=/trunk/; revision=17459
* Flush the filter log to make Tuomas happy :-)Jeffrey Stedfast2002-05-071-0/+10
| | | | | | | | | | | | 2002-05-06 Jeffrey Stedfast <fejj@ximian.com> * mail-ops.c (filter_folder_free): Flush the filter log to make Tuomas happy :-) * mail-session.c (mail_session_flush_filter_log): New convenience function to flush the session's filter log file. svn path=/trunk/; revision=16696
* New function that implements the Redirect feature.Jeffrey Stedfast2002-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | 2002-01-29 Jeffrey Stedfast <fejj@ximian.com> * mail-callbacks.c (redirect): New function that implements the Redirect feature. * mail-ops.c (mail_send_message): If we are redirecting a message, get the Resent-* recipients otherwise get the normal To/Cc/Bcc recipients and use them in the CamelTransport::send_to() method. * mail-session.c (main_get_filter_driver): Set the beep_func to the beep_cb, not the play_sound_func. Oops ;-) * folder-browser-ui.c: Add Redirect bonobo verb thingy here. (folder_browser_ui_set_selection_state): Add MessageRedirect to the proper string arrays. svn path=/trunk/; revision=15511
* This wrapper for gdk_beep().Jeffrey Stedfast2002-01-251-2/+7
| | | | | | | | 2002-01-24 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (session_system_beep): This wrapper for gdk_beep(). svn path=/trunk/; revision=15460
* When connecting to the transport username changed event, pass theJeffrey Stedfast2002-01-091-0/+2
| | | | | | | | | | 2002-01-08 Jeffrey Stedfast <fejj@ximian.com> * 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=15266
* Renamed. (mail_config_get_new_mail_notify_sound_file): Renamed.Jeffrey Stedfast2002-01-081-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | 2002-01-07 Jeffrey Stedfast <fejj@ximian.com> * mail-config.c (mail_config_set_new_mail_notify_sound_file): Renamed. (mail_config_get_new_mail_notify_sound_file): Renamed. * mail-accounts.c (notify_radio_toggled): Replace EXEC with PLAY_SOUND. (construct): renamed the exec_command stuff to play_sound. * main.c (main): Init and shutdown gnome_sound. * mail-ops.c (fetch_mail_fetch): Don't do any new-mail notification here. (filter_folder_filter): call camel_filter_driver_flush. * mail-session.c (main_get_filter_driver): Set the filter-driver exec_func here instead. * mail-ops.c (mail_fetch_mail): Don't set the filter-driver exec_func here. svn path=/trunk/; revision=15263
* Call e_passwords_remember_password() for account passwords if the user setJeffrey Stedfast2001-11-151-8/+17
| | | | | | | | | | 2001-11-13 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (pass_got): Call e_passwords_remember_password() for account passwords if the user set the "remember password" checkbox. svn path=/trunk/; revision=14696
* Argh!!! Dont free the async op data here, the async op is still running02001-10-301-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* More fixing of the license texts.Ettore Perazzoli2001-10-281-11/+11
| | | | svn path=/trunk/; revision=14217
* So apparently the uicomp can just 'vanish' while we're using it. Joy. Take52001-10-261-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-25 <NotZed@Ximian.com> * folder-browser-ui.c (fbui_sensitize_timeout): So apparently the uicomp can just 'vanish' while we're using it. Joy. Take care of that case here, fixes #13482. (fbui_sensitise_item): Check here too just for kicks. * mail-folder-cache.c (store_finalised): If we can't destroy our async event, then queue another one to do it. (store_finalised_finish): And handle it here, until we can, then free it. (mail_note_store): Queue an async event to get folderinfo, dont use mail_get_folderinfo. (update_folders_get): thread-async event to retrieve the folderinfo, and build it, then queues gui-async event to update the gui. (add_unmatched_info): Taken from mail-ops, adds unmatched if required. (add_vtrash_info): From mail-ops, add trash if required. (update_folders): Thread async event to update gui. (mail_note_store): Ref the store and storage when created. (update_1folder): Changed to assume we have info_lock, and store updates in an updates list. (setup_folder): Same. (folder_changed): Changed to call update_1folder directly. (real_folder_changed): Removed. (mail_note_folder): Changed to call update_1folder directly. (real_note_folder): Removed. (store_folder_subscribed): Call setup_folder directly. (real_folder_created): Removed. (real_flush_update): Function that actually does the updates in the gui thread. (mail_note_store): Go back to using mail_get_folderinfo. (update_folders): Fixed upf ro changed api's. (unset_folder_info): Changed to queue pending updates. (real_folder_deleted): Removed. (store_folder_unsubscribed): Do the removal work directly. (mail_note_store): Dont link to finalised event of store - we now ref it. (mail_note_store_remove): If we have any pending updates, clear them out. Also cancel any pending folderinfo retrieve operations. (update_folders): Remove our update from the storeinfo list, if it still exists. (update_1folder): Make 'sent folder shows all counts' optional via an environmental variable EVOLUTION_COUNT_SENT for all those bloody whinging lusers out there. (mail_note_store_remove): Unref the storage when done. * mail-mt.c (mail_async_event_emit): If we're in main and have a gui task, set it to run via an idle function. (idle_async_event): Wrapper for calling do_async_event from idle function, and freeing the message when done. (idle_async_event): Call mail_msg_free not free on the finished message. * component-factory.c (mail_remove_storage): Destroy the storage async. (store_disconnect): This does the work. (free_storage): Un-note the store when we remove it, so the store noting code can unref things properly. (idle_quit): Return false when done, dont loop. 2001-10-24 <NotZed@Ximian.com> * component-factory.c (owner_set_cb): Setup an async_event handler. (idle_quit): Try to destroy the async_event, or keep dropping out if it can't (deadlock). * mail-mt.c (do_async_event): Set the threadid of the thread we're running in so we know its running/which thread its in. (mail_async_event_emit): Added new argument 'type' which is the type of thread to execute against, gui or another one. Fixed all callers. (mail_async_event_destroy): Return -1 if this operation will fail (deadlock possibility). If we're in the thread of the task we're going to wait for, then return a failure (since we will deadlock). (mail_async_event_emit): Chagned to use MailAsyncFunc type as the function type, which just takes 3 void args, change args to suit. * mail-folder-cache.c (mail_note_store): Record the pending update events in a pending list. We should really be able to use an async event for this, but that doesn't return to the gui loop when done :-/ (update_folders): Remove from pending update when done. svn path=/trunk/; revision=14101
* (do_user_message): Setup the message_destroy_id when we setup theMichael Zucci2001-10-241-1/+1
| | | | | | destroy handler so it doesn't get called twice. svn path=/trunk/; revision=13955
* Removed, all functionality moved to mail-session.32001-10-241-81/+366
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-23 <NotZed@Ximian.com> * mail-mt.c (mail_user_message): (mail_get_password): Removed, all functionality moved to mail-session. * mail-config.c (mail_config_write_on_exit): Check threaded/preview hash is null before using it, its setup on demand so itmight nto be initialised here. * mail-session.c (request_password): Remove password_current stuff. (alert_user): Redont, similar to get_pass. Do things as async as possible, and dont even wait for a response if we're not asking for the cancel button (this may or may not be right behaviour - need to check). mail_user_message() code replaced from the stuff in mail-mt.c (MailSession): Added a lock field. (init): Setup lock. (finalise): fRee lock. (register_timeout): Redone. We now allocate our own 'timeoutid's, and <> to the real things asynchronously. Use async_event's so we can make sure we have no outstanding ones after shutdown. (mail_session_enable_interaction): If interaction has been disabled, and we have either a message-box open, or a password request open and/or any pending message boxes/passwords, blow 'em away. (main_register_timeout): If we have pending remove of this same timeout, dont do anything. (timeout_timeout): Properly honour the result, remove the timout if it returns false. svn path=/trunk/; revision=13952
* Completely re-done. We now hae a completely async dialogue when requested32001-10-231-35/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-23 <NotZed@Ximian.com> * mail-session.c (get_password): Completely re-done. We now hae a completely async dialogue when requested from antoehr thread, and dont use gtk_main() if we can avoid it (which is normally the case). This stuff is only partially finished, and will mena the removal of the same from mail-mt.c, and the mail_user_message() code will be moved here and changed to work in a similar way. * mail-callbacks.c (empty_trash): Dont try and connect to remote stores just to get the trash. Also, always run empty trash async, and make sure we unref the trash. (empty_trash): Hmm, dont unref the trash, causes a problem on exit, i suspect something else is doing funky unrefs on it. * mail-tools.c (mail_tool_get_trash): Pass a 'connect' arg, tell it whether it should tryand connect or not to the parent service, if it isn't already connected. * component-factory.c (owner_unset_cb): Dont try wait_all here, could potentially deadlock. (idle_quit): Keep returning TRUE if we have outstanding processing. Note that this may busy-wait during exit processign with busy tasks :( (idle_quit): Keep calling ourselves till we no longer get called (i.e. gtk_main really quits). * mail-mt.c (mail_msg_active): New function, returns TRUE if events are still active/outstanding. (do_op_status): @$@$#@@!#@!! didn't unlock the mail_msg_lock if data->activity was NULL and we had no global_shell_client anymore! Also shortcut processing if this is going to be the case. (mail_msg_init): Setup a temporary other gui_port for redoing with new semantics password, user message and progress reporting. (mail_get_password): #ifdef'd out all this code temporarily, till it gets fully moved to mail-session.c 2001-10-22 <NotZed@Ximian.com> * component-factory.c (owner_set_cb): Dont call enable_interaction here. (interactive_cb): But here instead, let the shell tell us when its ok to go interactive. svn path=/trunk/; revision=13933
* Added an async_event handler to store_info. (mail_note_store): Setup asyncMichael Zucci2001-10-171-12/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mail-folder-cache.c: Added an async_event handler to store_info. (mail_note_store): Setup async event handler here. (store_finalised): Flush out async events here. (folder_changed): Use async event handler to emit event. (mail_note_folder): Chagned, do most of the work in the calling context, only do the corba stuff in main. (store_folder_subscribed): Use async event, and do more work locally. (store_folder_unsubscribed): Same. (store_folder_deleted): Call store_folder_unsubscribed if we have to do any work. (store_folder_created): Call store_folder_subscribed if we have to do any work. (store_folder_unsubscribed): Ref store while busy. (real_folder_deleted): And unref here. (store_folder_subscribed): Reg store while busy. (real_folder_created): Unref here. (mail_note_folder): Ref folder while busy. (real_note_folder): And unref here. (mail_note_folder): Hook onto folder_deleted event. (folder_deleted): Just mark this folder as no longer available. * mail-session.c (register_timeout): Use mail_call_main instead of proxy_event. (remove_timeout): Same here. * folder-browser.c (folder_changed): use the new mail_async_event stuff. (folder_changed_main): Remove old async event handling stuff. (FOLDER_BROWSER_LOCK/UNLOCK): Removed. (FolderBrowserPrivate): Removed too, sigh. * mail-mt.c (mail_async_event_new, mail_async_event_emit, mail_async_event_destroy): New functions to handle async events. (mail_proxy_event, mail_proxy_event_id): Removed old functions for async events. (do_call): Add suport for MAIL_CALL_p_pp. (mail_msg_free): Use mail_async_event instead of proxy_event. * message-list.c (message_changed): Promote the message_changed to a folder_changed and use main_folder_changed to process it. (main_message_changed): Remove.d (message_list_init): Setup async event handler. (message_list_destroy): Remove async handler. (folder_changed): Use async hanler to emit event in main loop. (message_changed): Same. svn path=/trunk/; revision=13698
* Proxy get-password call to main thread. (forget_password): same for52001-10-161-5/+26
| | | | | | | | | | | | | | | 2001-10-15 <NotZed@Ximian.com> * mail-session.c (get_password): Proxy get-password call to main thread. (forget_password): same for forget_password. (get_filter_driver): and same for get_filter_driver, since it uses gtk objects. * mail-mt.c (mail_call_main): new generic interface for calling stuff/proxying in the gui thread. svn path=/trunk/; revision=13679
* call e_passwords_init and e_passwords_shutdown.Chris Toshok2001-10-131-102/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-12 Chris Toshok <toshok@ximian.com> * main.c (main): call e_passwords_init and e_passwords_shutdown. * mail-session.h: add prototypes for mail_session_{get,add}_password. * mail-session.c (init): empty this out - we use e_passwords instead of a local hashtable. (get_password): use e_passwords_get_password and e_passwords_add_password. (forget_password): use e_passwords_forget_password. (mail_session_remember_password): use e_passwords_remember_password. (mail_session_forget_password): use e_passwords_forget_password. (mail_session_get_password): new function, use e_passwords_get_password. (mail_session_add_password): same, use e_passwords_add_password. (mail_session_forget_passwords): use e_passwords_forget_passwords. * mail-config.c (mail_config_write_on_exit): fix this up so it works as desired with the e_passwords stuff. svn path=/trunk/; revision=13640
* Pass an empty flags argument to mail_tool_uri_to_folder.Jeffrey Stedfast2001-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-10-02 Jeffrey Stedfast <fejj@ximian.com> * mail-vfolder.c (vfolder_setup_do): Pass an empty flags argument to mail_tool_uri_to_folder. (vfolder_adduri_do): Same. * mail-session.c (get_folder): Pass an empty flags argument to mail_tool_uri_to_folder. * mail-send-recv.c (receive_get_folder): Pass an empty flags argument to mail_tool_uri_to_folder. * mail-ops.c (get_folder_get): Pass the flags to mail_tool_uri_to_folder. (mail_get_folder): Now takes a flags argument. (remove_folder_get): Pass an empty flags argument to mail_tool_uri_to_folder. (mail_send_message): Pass an empty argument flag to mail_tool_uri_to_folder. (transfer_messages_transfer): Same. Destination folder should already be created by this time. * folder-info.c (do_get_info): Pass an empty flags argument to mail_tool_uri_to_folder. * importers/evolution-mbox-importer.c (folder_created_cb): Pass the CREATE flag here too. (load_file_fn): And here. (load_file_fn): And here too. * importers/evolution-outlook-importer.c (load_file_fn): Pass the CREATE flag to mail_tool_uri_to_folder. * folder-browser.c (folder_browser_new): Pass an empty flags argument. (x_evolution_message_parse): Pass an empty flags argument to mail_tool_uri_to_folder. * component-factory.c (create_folder): Pass a CREATE flag to mail_get_folder here too. (owner_set_cb): And here. (xfer_folder): Shouldn't need the CREATE flag here, so not passing any flags. (destination_folder_handle_drop): Same. * mail-local.c (mail_local_store_add_folder): Pass a CREATE flag to mail_get_folder. (reconfigure_folder_reconfigure): Pass an empty flags argument to mail_tool_uri_to_folder. * mail-tools.c (mail_tool_uri_to_folder): Take a flags argument. (mail_tool_get_local_inbox): Pass an empty flags argument to mail_tool_uri_to_folder. svn path=/trunk/; revision=13353
* Perform a NULL-check. Hopefully fixes bug #7874.Jeffrey Stedfast2001-09-281-0/+3
| | | | | | | | | 2001-09-27 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (mail_session_remember_password): Perform a NULL-check. Hopefully fixes bug #7874. svn path=/trunk/; revision=13198
* Pass a 'cache-me' argument to mail_get_password.Jeffrey Stedfast2001-09-191-6/+9
| | | | | | | | | | | | | | | 2001-09-18 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (get_password): Pass a 'cache-me' argument to mail_get_password. * mail-mt.c (pass_got): Make less confusing... (mail_get_password): Now takes an argument 'cache' that allows our caller to determine if the user wanted to cache his/her password or not. (pass_got): Set the cache option. svn path=/trunk/; revision=12950
* zero-ize the password before freeing. (forget_password): Same.Jeffrey Stedfast2001-08-221-1/+3
| | | | | | | | | | 2001-08-21 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (mail_session_forget_password): zero-ize the password before freeing. (forget_password): Same. svn path=/trunk/; revision=12350
* This should return a GtkWidget not a GtkObject.Jeffrey Stedfast2001-08-081-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | 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
* return the source url for popb4smtp auth request.Not Zed2001-08-031-0/+11
| | | | | | | | | 2001-08-03 Not Zed <NotZed@Ximian.com> * mail-session.c (get_password): return the source url for popb4smtp auth request. svn path=/trunk/; revision=11616
* We are not guarenteed to have a non-NULL service (ie. PGP) thus check forJeffrey Stedfast2001-07-311-4/+5
| | | | | | | | | | | 2001-07-30 Jeffrey Stedfast <fejj@ximian.com> * mail-mt.c (do_get_pass): We are not guarenteed to have a non-NULL service (ie. PGP) thus check for it. (pass_got): And again here. (mail_get_password): And of course here too. svn path=/trunk/; revision=11493
* Actually add the timeout, this time in the gtk thread.Not Zed2001-07-301-7/+35
| | | | | | | | | | | | | | | 2001-07-30 Not Zed <NotZed@Ximian.com> * mail-session.c (do_register_timeout): Actually add the timeout, this time in the gtk thread. (do_remove_timeout): And same for remove. (register_timeout): (remove_timeout): Proxy the gtk calls to the main thread, and wait for them to execute synchronously. (register_timeout): Instead of return with fail for a too small timeout, just increase the timeout. svn path=/trunk/; revision=11468
* Don't need this anymore. (do_get_pass): Since we already have the entryJeffrey Stedfast2001-07-281-0/+2
| | | | | | | | | | 2001-07-27 Jeffrey Stedfast <fejj@ximian.com> * mail-mt.c (focus_on_entry): Don't need this anymore. (do_get_pass): Since we already have the entry widget, no need to do the nasty focus_on_entry hack. svn path=/trunk/; revision=11453
* Don't make the key url:item if we have the url, just make it url. ThisJeffrey Stedfast2001-07-261-15/+0
| | | | | | | | | | 2001-07-25 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (make_key): Don't make the key url:item if we have the url, just make it url. This fixes bug #5339. (mail_session_set_password): Removed. svn path=/trunk/; revision=11411
* Don't make the key url:item if we have the url, just make it url. ThisJeffrey Stedfast2001-07-261-56/+61
| | | | | | | | | 2001-07-25 Jeffrey Stedfast <fejj@ximian.com> * mail-session.c (make_key): Don't make the key url:item if we have the url, just make it url. This fixes bug #5339. svn path=/trunk/; revision=11410
* Now take a CamelService parameter (as passed by Camel). Allows us to havePeter Williams2001-07-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | 2001-07-25 Peter Williams <peterw@ximian.com> * mail-mt.c (mail_get_password): Now take a CamelService parameter (as passed by Camel). Allows us to have a "remember password" checkbox that is set correctly and whose settings can be propagated back to the proper MailConfigService. (do_get_pass): Add a checkbutton allowing the user to change whether the password is remembered or not. (pass_got): Apply the setting of the "remember password" checkbutton (if not cancelled.) * mail-mt.h: Update the prototype here. * mail-config.c (mail_config_service_set_save_passwd): New function, pretty bland. * mail-config.h: Prototype our bland new function. (Get it? It's a pun!) * mail-session.c (get_password): Pass the service as well. svn path=/trunk/; revision=11408
* Implement this, based on code that used to be in mail-ops.cDan Winship2001-07-021-0/+67
| | | | | | | | | | | | | | | | | * mail-session.c (get_filter_driver): Implement this, based on code that used to be in mail-ops.c * mail-ops.c (mail_load_filter_context, setup_filter_driver): Moved into MailSession::get_filter_driver. (filter_get_folder): Moved to mail-session.c (mail_filter_folder, mail_filter_on_demand, mail_fetch_mail, mail_send_mail, mail_send_queue): Remove FilterContext args, use camel_session_get_filter_driver. * mail-send-recv.c (mail_send_receive, mail_receive_uri): Remove FilterContexts svn path=/trunk/; revision=10682
* Use MAILER_CFLAGS and MAILER_LIBS.Jeffrey Stedfast2001-05-231-1/+1
| | | | | | | | 2001-05-22 Jeffrey Stedfast <fejj@ximian.com> * Makefile.am: Use MAILER_CFLAGS and MAILER_LIBS. svn path=/trunk/; revision=9934
* Split "Other" page into three pages, Display, Composer, and PGP. Add HTMLDan Winship2001-05-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mail-config.glade: Split "Other" page into three pages, Display, Composer, and PGP. Add HTML image stuff on the Display page and default forward style on the Composer page. * mail-config.c (mail_config_get_default_forward_style, mail_config_set_default_forward_style): User-specified default style for forwarding messages. (config_read, mail_config_write_on_exit): Deal with forward style. * mail-accounts.c: Handle HTML image display options and default forward style. * mail-callbacks.c (forward): New. Forward in the user-selected default style. (forward_inline, forward_quoted): Simplify these some. Remove the fallback to forward attached when forwarding multiple messages: it should just forward the multiple messages inline or quoted in those cases. (Which it doesn't yet, but that's a bug.) * folder-browser.c (context_menu): Remove "Forward inline" and make "Forward" call forward() rather than forward_attached(). * folder-browser-factory.c: Update command/menu/toolbar/pixmap gunk for the "MessageForwardAttached" vs "MessageForward" split. * mail-session.c (mail_session_get_type): * mail-format.c (format_mime_part): * mail-account-gui.c (setup_service): Fix warnings. svn path=/trunk/; revision=9792
* Renamed from session.c and made to be a subclass of CamelSession.Dan Winship2001-04-281-0/+405
* mail-session.c: Renamed from session.c and made to be a subclass of CamelSession. * mail-mt.c (mail_user_message): Renamed from mail_get_accept and made more general-purpose, to implement the new camel_session_alert_user. svn path=/trunk/; revision=9618