2007-05-23 Murray Cumming <murrayc@murrayc.com>
[modest] / ChangeLog2
index f6b93dd..6e70845 100644 (file)
@@ -1,3 +1,304 @@
+2007-05-23  Murray Cumming  <murrayc@murrayc.com>
+
+       Modest on-disk outbox directories are now here, for instance:
+       $HOME/.modest/outboxes/<account-id-1>/outbox
+       $HOME/.modest/outboxes/<account-id-2>/outbox
+       instead of here:
+       $HOME/.modest/local-folders/outbox
+       so we can have a separate outbox for each account.
+       But they are shown as one outbox in the GtkTreeView, by using a 
+       TnyMergeFolder in a ModestTnySimpleFolderStore.
+       
+       * src/Makefile.am:
+       * src/modest-tny-simple-folder-store.c:
+       * src/modest-tny-simple-folder-store.h:
+       Added ModestTnySimpleFolderStore, used to contain folders from 
+       other folder stores, such as other accounts.
+       
+       * src/modest-tny-outbox-account.h:
+       * src/modest-tny-outbox-account.c:
+       Added ModestTnyOutboxAccount, derived from TnyCamelStoreAccount, 
+       used for the per-account local outbox folders.
+       
+       * src/modest-defs.h: Rename MODEST_LOCAL_FOLDERS_ACCOUNT_ID to 
+       MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID, to make it clearer that we 
+       only use this (internally) now for the non-outbox local folders.
+
+       * src/modest-init.h:
+       * src/modest-init.c: Added modest_init_one_local_folder(), for 
+       setting up the directory structure for each local folder.
+
+       * src/modest-local-folder-info.c:
+       (modest_per_account_local_outbox_folder_info_get_maildir_path),
+       (modest_per_account_local_outbox_folder_info_get_maildir_path_to_ou
+       tbox_folder):
+       * src/modest-local-folder-info.h:
+       * src/modest-tny-account-store.c: (on_account_removed),
+       (on_account_changed), (create_per_account_local_outbox_folders),
+       (get_server_accounts), (modest_tny_account_store_get_accounts),
+       (modest_tny_account_store_get_tny_account_by_account),
+       (modest_tny_folder_store_is_virtual_local_folders):
+
+       * src/modest-tny-account.h:
+       * src/modest-tny-account.c:
+       Added modest_tny_account_new_for_per_account_local_outbox_folder(), 
+       to create an on-disk per-account local outbox folder for each 
+       transport account.
+       (create_per_account_local_outbox_folders): Create a local outbox folder 
+       for each transport account.
+       (modest_tny_account_new_for_local_folders): Do not create an outbox folder 
+       for all local folders.
+       
+       Added modest_tny_account_get/set_parent_modest_account_name_for_server_account() 
+       instead of using g_object_get/set() directly. It is clearer.
+       
+       (modest_tny_folder_store_get_message_count),
+       (modest_tny_folder_store_get_local_size
+       (modest_tny_folder_store_get_folder_count): Renamed from modest_tny_account*, 
+       because we now use these with non-acount folder stores.
+       
+       (modest_tny_account_get_special_folder),
+       (modest_tny_account_new_from_server_account),
+       (modest_tny_account_new_from_account):
+       (recurse_folders): Adjust to the new outbox system.
+       
+       * src/modest-tny-folder.h:
+       * src/modest-tny-folder.c: 
+       (modest_tny_folder_is_local_folder),
+       (modest_tny_folder_get_local_folder_type),
+       (modest_tny_folder_is_outbox_for_account): Adjust for the new outbox system.
+       
+       * src/widgets/modest-main-window.h:
+       * src/maemo/modest-main-window.c: (create_details_widget),
+       (modest_main_window_set_contents_style): Show details for any folder store, 
+       not just accounts.
+       
+       (modest_tny_folder_get_rules): 
+       Remove the const. C does not support constness enough for this.
+       
+       * src/modest-ui-actions.c:
+       update_model(): Use a ModestTnySimpleListStore and a TnyMergeFolder to 
+       make all outboxes appear as one, in the usual local-folders tree node.
+       
+       (set_active_account_from_tny_account),
+       (modest_ui_actions_on_folder_selection_changed):
+       * src/widgets/modest-folder-view.c: (text_cell_data),
+       (icon_cell_data), (filter_row),
+       (add_account_folders_to_merged_folder),
+       (add_account_folders_to_simple_folder_store), (),
+       (get_cmp_rows_type_pos), (cmp_rows),
+       (modest_folder_view_set_account_id_of_visible_server_account):
+       Adjust to the new outbox system, using generic folder stores and folders 
+       in the GtkTreeModel.
+
+2007-05-23  Christian Kellner  <ckellner@openismus.com>
+
+       * src/modest-mail-operation.c:
+       (modest_mail_operation_update_account):
+       Use info->max_size instead of unintialized local var [small
+       build fix]. (Added TODO to review that change since I don't
+       know the code)
+
+2007-05-23  Marcus Bauer  <marcusb@openismus.com>
+
+       * libmodest-dbus-client/libmodest-dbus-client.c:
+       (libmodest_dbus_client_compose_mail): function added
+       * src/dbus_api/modest-dbus-api.h:
+       * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail),
+       (on_compose_mail): Implementation of the SendAsMail functionality
+
+2007-05-22 Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-account-mgr.c:
+       (modest_account_mgr_add_server_account): Set the secure-connection 
+       conf key for transport accounts as well as store accounts. I don't know 
+       why the if was there. For instance, this makes sure that we use SSL 
+       for the gmail preset from the easysetup wizard.
+
+2007-05-22 Murray Cumming  <murrayc@murrayc.com>
+
+       * src/gnome/modest-main-window.c:
+       (on_account_store_connecting_finished), (connect_signals):
+       * src/maemo/modest-main-window.c:
+       (on_account_store_connecting_finished), (connect_signals),
+       (modest_main_window_new):
+       Handle TnyAccountStore::connecting-finished instead of 
+       TnyDevice::connection-changed, because we cannot actually perform 
+       operations on accounts until TnyAccountStore has itself responded to 
+       the TnyDevice::connection-changed signal. This prevents a GError from 
+       tinymail.
+       Do not try to update at startup, because we (at least on scratchbox) 
+       already do an update at startup when the device goes online. 
+       This prevents a GError from tinymail.
+       * src/modest-ui-actions.c: (modest_ui_actions_do_send_receive): 
+       Added TODO about stopping simultaneous operations.
+
+2007-05-21  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-account-mgr.c: (modest_account_mgr_add_account):
+       * src/modest-mail-operation-queue.c:
+       (modest_mail_operation_queue_remove):
+       * src/modest-tny-account-store.c: When GErrors happen, give more clues 
+       about where they happened.
+
+2007-05-21  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-ui-actions.c:
+       (modest_ui_actions_on_password_requested): Make sure that the remember 
+       output parameter is always TRUE.
+
+2007-05-21  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-tny-account-store.c: (modest_tny_account_store_alert):
+       Show a OK/Cancel dialog if the error is a question, though we still do not 
+       know anything more about what we are asking the user.
+       * src/widgets/modest-folder-view.c: (on_drag_data_received):
+       Fix an uninitialized variable (helper). This is a logic error, however.
+
+2007-05-21  Christian Kellner  <ckellner@openismus.com>
+       
+       * src/modest-search.h:
+       Correct bit shifting in the ModestSearchFlags enum.
+
+2007-05-21  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-tny-account.c:
+       (modest_tny_account_new_from_server_account): Do not use the lsub and 
+       check-all hard-coded IMAP options when using POP.
+
+2007-05-21  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-tny-account.c:
+       (modest_tny_account_new_from_server_account): 
+       Use NULL for the secure-auth method for POP when Password auth has been 
+       specified by the user, as we already do for IMAP. "auth=Login" causes 
+       an error from camel or the server.
+
+2007-05-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-account-settings-dialog.c:
+       (create_page_account_details),
+       (modest_account_settings_dialog_set_account_name):
+       * src/maemo/modest-account-settings-dialog.h: Hide the whole caption 
+       for the leave-on-server checkbox, rathr than just the checkbox, when 
+       the protocol is not POP.
+
+2007-05-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/widgets/modest-account-view.c:
+       * src/widgets/modest-account-view.h:
+       Added modest_account_view_select_account() which will be useful later 
+       to asynchronously re-select the edited account.
+
+2007-05-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-account-settings-dialog.c:
+       (modest_account_settings_dialog_set_account_name): 
+       Automatically choose the port numbers based on the secure authentication 
+       methods, if they have not been chosen before.
+       This fixes projects.maemo.org bug NB#56273 .
+
+2007-05-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-main-window-ui.h:
+       * src/modest-ui-actions.c:
+       * src/modest-ui-actions.h:
+       Connect the Tools/SMTP Servers menu item to 
+       modest_ui_actions_on_smtp_servers(), which shows the connection-specific 
+       SMTP servers dialog, as in the UI specification and saves changes when it 
+       is closed. This fixed  projects.maemo.org bug NB#56305 .
+
+2007-05-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-connection-specific-smtp-window.c:
+       (modest_connection_specific_smtp_window_init):
+       Use gtk_window_set_default_size() to make this window big enough, so 
+       we see more of the GtkTreeView. This fixes projects.maemo.org bug NB#55497 .
+
+2007-05-17  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-connection-specific-smtp-edit-window.h:
+       * src/maemo/modest-connection-specific-smtp-edit-window.c:
+       (modest_connection_specific_smtp_edit_window_init),
+       Do not try to connect to a combobox signal before the combobox exists.
+       This fixes the cras in projects.maemo.org bug NB#56288 .
+       (modest_connection_specific_smtp_edit_window_get_settings):
+       Remove the server_account_name parameter which was being checked for NULL 
+       though it was not used.
+
+       * src/maemo/modest-connection-specific-smtp-window.c:
+       (modest_connection_specific_smtp_window_fill_with_connections),
+       (on_button_edit), (modest_connection_specific_smtp_window_init):
+       Correct the number of treemodel columns to prevent a warning.
+       Added DEBUG_WITHOUT_LIBCONIC #define, for debugging on scratchbox, where 
+       libconic does not work.
+
+2007-05-16  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-tny-account.c:
+       (modest_tny_account_new_from_server_account):
+       Explicitly use ANONYMOUS secure authentication, instead of "PLAIN" for 
+       SMTP when "None" was chosen by the user. However, with my SMTP server that 
+       does not support ANONYMOUS, the emails do not leave the Outbox and I see 
+       no error dialog.
+
+2007-05-16  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-pair.h: Improve the documentation for modest_combo_box_new() 
+       to explain the memory management issue with the ID in the ModestPair.
+       
+       * src/gnome/modest-account-assistant.c: (add_receiving_page),
+       (add_sending_page), (modest_account_assistant_finalize):
+       * src/gnome/modest-gnome-global-settings-dialog.c:
+       (create_updating_page), (create_composing_page):
+       * src/gnome/modest-msg-edit-window.c: (get_transports),
+       (init_window), (modest_msg_edit_window_finalize),
+       (modest_msg_edit_window_get_msg_data):
+       * src/gnome/modest-store-widget.c: (imap_pop_configuration):
+       * src/gnome/modest-transport-widget.c:
+       (modest_transport_widget_finalize), (smtp_configuration):
+       * src/maemo/modest-maemo-global-settings-dialog.c:
+       (create_updating_page), (create_composing_page):
+       * src/maemo/modest-msg-edit-window.c: (get_transports),
+       (init_window), (modest_msg_edit_window_finalize),
+       (modest_msg_edit_window_get_msg_data),
+       (modest_msg_edit_window_free_msg_data):
+       * src/maemo/modest-store-widget.c: (imap_pop_configuration),
+       (modest_store_widget_finalize):
+       * src/maemo/modest-transport-widget.c:
+       (modest_transport_widget_finalize), (smtp_configuration):
+       * src/modest-main.c: (send_mail):
+       * src/widgets/modest-combo-box.h:
+       * src/widgets/modest-global-settings-dialog-priv.h:
+       * src/widgets/modest-global-settings-dialog.c:
+       (modest_global_settings_dialog_finalize):
+       * src/widgets/modest-msg-edit-window.h:
+       Whenever using modest_combo_box_new(), keep the ModestPairList alive
+       as long as the combo box, to prevent use of freed memory for the ID.
+
+2007-05-15  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/modest-tny-account-store.c: (get_server_accounts): Renamed from 
+       get_accounts(), to make this clearer. Do not check for the enabled gconf
+       key, because we do not use this for server accounts (at least, not yet).
+       This allows us to send email again.
+
+2007-05-15  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-platform.c:
+       (on_modest_conf_update_interval_changed), (modest_platform_init):
+       Only respond to this particular key change. All these strcmp()s cannot be 
+       efficient.
+
+2007-05-15  Murray Cumming  <murrayc@murrayc.com>
+
+       * src/maemo/modest-maemo-global-settings-dialog.c:
+       (current_connection): Prevent a crash in scratchbox when 
+       ny_maemo_conic_device_get_current_iap_id() returns NULL.
+       * src/maemo/modest-platform.c:
+       (on_modest_conf_update_interval_changed), (modest_platform_init):
+       Get the update interval from gconf and reset it when the gconf key changes.
+
 2007-05-15  Murray Cumming  <murrayc@murrayc.com>
 
        * src/modest-protocol-info.c: