2007-07-30 Murray Cumming * src/modest-tny-account-store.c: (on_account_removed), (on_account_changed): Emit the ACCOUNT_UPDATE signal so that the account is removed from the View menu. We have TnyAccountStore and ModestTnyAccountStore signals that seem very similar, but this seems to work for now. * src/maemo/modest-main-window.c: (on_show_account_action_activated): Prevent dereference of a NULL if the accoutn does not really exist, though that should not happen anymore. This fixes projects.maemo.org bug NB#64606. 2007-07-30 Murray Cumming * src/modest-ui-actions.c: (run_account_setup_wizard), (modest_ui_actions_on_accounts): Revert a change that set these to modal dialogs, freezing the UI when they show secondary dialogs. This fixed projects.maemo.org bug NB#64519. 2007-07-27 Murray Cumming * src/widgets/modest-header-view-render.c: (_modest_header_view_compact_header_cell_data): Some checks and initialization to try to deal with a crash, probably ineffective. 2007-07-27 Murray Cumming * src/maemo/modest-maemo-utils.c: (modest_maemo_utils_get_supported_secure_authentication_methods): Make sure that we have a connection, asking the user for one if necessary. * src/maemo/modest-main-window.c: (modest_main_window_on_show): Check for a connection before showing the wizard, because the wizard needs a connection to check for server capabilities. 2007-07-27 Murray Cumming * src/maemo/modest-account-view-window.c: (on_new_button_clicked): Remember the wizard dialog instance, so we can just present it again if necessary. This prevents multiple windows from appearing if you click again quickly on the New button before the dialog appears, fixing projects.maemo.org bug NB#64169. 2007-07-27 Murray Cumming * src/maemo/modest-main-window.c: (modest_main_window_on_show): Offer a connection dialog if there is no connection when starting modest. This should fix projects.maemo.org bug NB#61134. 2007-07-27 Murray Cumming * src/maemo/modest-msg-edit-window.c: (replace_with_attachments): Reverted my last commit. I was able to fix the build by doing apt-get install wpeditor0 (replacing other wpeditor packages) and an explicit apt-get install wpeditor-dev to upgrade the -dev package. 2007-07-27 Murray Cumming * src/maemo/modest-msg-edit-window.c: (replace_with_attachments): Commented out the use of wp_text_buffer_replace_image() because it does not exist, to break the build. Added a TODO for it. 2007-07-26 Murray Cumming * src/modest-tny-account-store.c: (recreate_all_accounts): Recreate them even if they were NULL before. I guess something else was already creating them before, or this would never have worked. (modest_tny_account_store_get_server_account): Make sure that the tny accounts have been created before trying to find one. This allows libmodest_dbus_client_compose_mail() to work when the UI is not yet visible. This is probably useful in other cases too. (get_password): When the password is wrong after it is entered in the protected password dialog, show an info banner (in an idle handler) before showing the protected password dialog again. 2007-07-26 Murray Cumming * src/modest-ui-actions.h: * src/modest-ui-actions.c: Added modest_do_refresh_current_folder() containing some code from modest_ui_actions_on_send_receive(). * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_receive): Call modest_do_refresh_current_folder() before refreshing the requested account, as in modest_ui_actions_on_send_receive(). This is strange, but seems to be necessary to show new mails. Now new emails are finally visible in the UI when downloaded via the automatic update interval, fixing bug NB#57458. This also works because bug NB#57458 has been fixed somehow. 2007-07-26 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter): printf more details when we get unhandled D-Bus methods, because it is interesting. * src/modest-mail-operation.c: (update_account_thread): Comment out the tny_camel_pop_store_account_reconnect(), because this is apparently no longer needed, and it did not work before anyway. See the comment in the code. * src/modest-search.c: (modest_search_folder): Ignore deleted emails, by checking the header flags. This fixes projects.maemo.org bug NB#64225. 2007-07-25 Murray Cumming * src/maemo/modest-maemo-utils.h: * src/maemo/modest-maemo-utils.c: Added modest_maemo_show_information_note_in_main_context_and_forget(). * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Use the new function to show simple error dialogs in the main context, though question dialogs are still in the current context, which is unfortunately usually not the main context. This should fix some hangs. 2007-07-25 Murray Cumming * src/modest-tny-account-store.c: (get_password): Never save the entered username and password in gconf, because the UI spec says we should not. This helps slightly with projects.maemo.org bug NB#63671. 2007-07-25 Murray Cumming * src/widgets/modest-msg-edit-window.h: * src/maemo/modest-msg-edit-window.c: (create_stream_for_uri): Moved some code here to make it simpler. (modest_msg_edit_window_attach_file_one): Renamed from modest_msg_edit_window_attach_file_interactive(). (modest_msg_edit_window_offer_attach_file): Renamed from modest_msg_edit_window_attach_file() and used modest_msg_edit_window_attach_file_one() instead of copy/pasting the code. The old code for one was not using GnomeVFS. This allows use of smb:// URLs when using send-as from external applications, fixing bug NB#63741. (modest_msg_edit_window_insert_image), (modest_msg_edit_window_add_attachment_clicked): * src/modest-ui-actions.c: (modest_ui_actions_on_attach_file): * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail): Adapted to the new function names. 2007-07-25 Murray Cumming (modest_platform_set_update_interval): Set the alarm recurrence fields so that auto-update does not just happen the first time. This should have fixed projects.maemo.org bug NB#63938. When this happens you can see a printf when the D-Bus method is called: GLIB DEBUG default - debug: modest_dbus_req_handler: method received: SendReceive However, I do not actually seem to get new POP messages even when clicking the refresh button manually. A restart gets them. This might be a problem in today's tinymail only. 2007-07-24 Murray Cumming * src/maemo/modest-maemo-global-settings-dialog.c: (current_connection): Avoid a crash (probably only in scratchbox) when strcmp()ing a NULL when closing the dialog. 2007-07-24 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message): Remove the hacky send/receive that didn't work, and instead refilter the treemodel to make the deleted email really vanish from the UI (though the delete-from-menu code does has commented out the code that does that). This fixes projects.maemo.org bug NB#62859. 2007-07-24 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message): Try a couple of tricks to force the treeview to update ( poke the folder, and do a send/receive refresh), but the deleted email still appears with a strike-through instead of really being removed. 2007-07-23 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (add_single_folder_to_list): Ignore TnyMergeFolder folders, because their ID is not human-readable (see the comment about improvements needed to the osso-email-interface API) and TnyMergeFolder::get_id_func() currently crashes with DBC enabled. 2007-07-23 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_handler), (add_folders_to_list), (on_dbus_method_get_folders), (modest_dbus_req_filter): * src/maemo/modest-maemo-utils.c: (on_camel_account_get_supported_secure_authentication): * src/maemo/modest-main-window.c: (modest_main_window_set_style), (on_header_view_focus_in): * src/modest-email-clipboard.c: (modest_email_clipboard_set_data): * src/modest-formatter.c: (modest_formatter_create_body_part): * src/modest-mail-operation.c: (recurse_folders), (update_account_thread), (get_msgs_full_thread), (modest_mail_operation_get_msgs_full), (modest_mail_operation_xfer_msgs): * src/modest-search.c: (search_mime_part_and_child_parts), (modest_search_account), (modest_search_all_accounts): * src/modest-tny-account.c: (modest_tny_account_get_special_folder), (recurse_folders): * src/modest-tny-local-folders-account.c: (modest_tny_local_folders_account_query_passes): * src/modest-tny-msg.c: (copy_mime_part), (modest_tny_msg_find_body_part_from_mime_part): * src/modest-tny-send-queue.c: (modest_tny_send_queue_cancel), (modest_tny_send_queue_try_to_send): * src/modest-ui-actions.c: (modest_ui_actions_on_delete_message), (_modest_ui_actions_open), (download_uncached_messages), (reply_forward), (modest_ui_actions_on_copy), (modest_ui_actions_on_details), (has_retrieved_msgs), (msgs_move_to_confirmation), (open_msg_for_purge_cb), (do_headers_action): * src/modest-ui-dimming-rules.c: (_already_opened_msg), (_selected_msg_marked_as), (_msg_download_completed), (_selected_msg_sent_in_progress): * src/widgets/modest-attachments-view.c: (modest_attachments_view_set_message): * src/widgets/modest-msg-view.c: (find_cid_image): * tests/check_folder-transfer.c: (find_folders): * tests/check_update-account.c: (func): * tests/dbus_api/test_get_folders.c: (main): Checked all uses of tny_iterator_get_current(), making sure that the object is unreferenced (3 or 4 places did not), and adding checks for NULL. 2007-07-23 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_default_inbox): Make sure that the application UI is visible. * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_invalid_character): Show the word whitespace instead of (null) in the banner when whitespace was entered. (show_error): Add a comment that this does not work in Maemo Bora, though we do not know why. 2007-07-23 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_get_special_folder): Use an if instead of an assert for when the parent account name is NULL, because this might be causing a crash in projects.maemo.org bug 63192. * src/modest-mail-operation.c: (modest_mail_operation_send_new_mail_cb), (modest_mail_operation_remove_folder): unref the folder that is returned from modest_tny_account_get_special_folder(). 2007-07-23 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Show mail_ib_login_cancelled info banner when the user cancels the protected password dialog, to fix projects.maemo.org bug NB#63617. 2007-07-23 Murray Cumming * src/maemo/modest-account-settings-dialog.c: (create_page_outgoing): Put this page in a GtkScrolledWindow, matching the UI mock-up in the UI spec, and allowing access to all widgets even when the on-screen keyboard is active. 2007-07-23 Murray Cumming Reverted this previous commit from Johannes, because the scrollbars are always visible and because I think we only need it on onepage of the account settings, not the account wizard. (I wrote the wrong instructions in the bug.) * src/maemo/easysetup/modest-easysetup-wizard.c: Added scrollbars to account wizard dialog. Fixed projects.maemo.org NB #62744 2007-07-22 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_user_details): Use auto-cap for name (projects.maemo.org NB#63716) * src/widgets/modest-account-view.c: (on_account_busy_changed): 2007-07-22 Armin Burgmeier * src/maemo/modest-ui-actions.c: Use current account instead of default account for creating viewer windows, so that the viewer window knows to which account the viewed message belongs. * src/maemo/modest-msg-view-window.c: Destroy the window when the corresponding account is deleted. This fixes projects.maemo.org bug NB#62936. 2007-07-18 Armin Burgmeier * src/maemo/modest-connection-specific-smtp-edit-window.c: Don't let the dialog close after entering an invalid port number and clicking OK. This fixes projects.maemo.org bug NB#63602. 2007-07-18 Armin Burgmeier * src/modest-tny-account-store.c: (get_server_accounts): Set parent modest account name for each connection-specific transport account so that special folders of such an account can be looked up. This fixes a crash when changing account settings. This might also be related to projects.maemo.org bug NB#63594. 2007-07-16 Armin Burgmeier * src/modest-ui-actions.c: Added a button to create a folder to the move-to dialog. This fixes projects.maemo.org bug NB#. 2007-07-16 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: Added scrollbars to account wizard dialog. Fixed projects.maemo.org NB #62744 2007-07-16 Murray Cumming * src/widgets/modest-msg-view.h: * src/widgets/modest-msg-view.c: Added modest_msg_view_get_message_is_empty() but this needs to be implemented. * src/maemo/modest-msg-edit-window.c: (message_is_empty): Check if there is any text in the message yet. But this needs to be implemented properly. (modest_msg_edit_window_toggle_find_toolbar): * src/maemo/modest-msg-view-window.c: (modest_msg_view_window_toggle_find_toolbar): Show a banner warning if there is no text to search, when trying to start a search. This partially fixes projects.maemo.org bug NB#62350. 2007-07-13 Murray Cumming * src/modest-mail-operation.c: (update_account_thread): Initialized num_new_headers to fix the build. 2007-07-13 Murray Cumming * src/modest-account-mgr.c: (modest_account_mgr_account_names): Ignore modest accounts whose server accounts don't exist in gconf. This prevents us trying to create TnyAccount instances for those server accounts when the server account has been removed from gconf, but the parent modest account has not yet been removed from modest. I don't know why this is only noticeable now. It was probably just a harmeless g_warning() anyway. 2007-07-13 Murray Cumming * src/modest-ui-dimming-rules.c: (_selected_folder_is_root): Fix my previous commit, to avoid unrefing a NULL TnyFolderStore. 2007-07-12 Armin Burgmeier * src/maemo/modest-main-window.c: Make default account appear bold in view, tools/send & receive and toolbar/send & receive SCM menus. This fixes projects.maemo.org bug NB#59010. 2007-07-12 Murray Cumming * src/modest-ui-dimming-rules.c: (_selected_folder_is_root): Add a short-cut, by checking if the folder store is an account. This ensures that the Sort menu item and toolbar is dimmed for the local-folders account root item, fixing projects.maemo.org bug NB#62545. 2007-07-12 Murray Cumming * src/modest-tny-account-store.c: (get_password): Show the password dialog (via the signal) only in the mainloop, via an idle handler that we wait for. This could theoretically prevent hangs, though I worry that it could introduce some too. 2007-07-12 Murray Cumming * src/gnome/modest-platform.c: (modest_platform_connect_and_wait): * src/maemo/modest-platform.c: (modest_platform_connect_and_wait): Take a TnyAccount* parameter and try to set it to online (a TnyCamel-only API), because tinymail sets accounts to offline when the user cancels a password dialog, and doesn't ask again until it has been set to online. However, this is commented out because it causes a hang now. (modest_platform_connect_and_wait_if_network_account): * src/modest-mail-operation.c: (modest_mail_operation_update_account): * src/modest-platform.h: * src/modest-ui-actions.c: (_modest_ui_actions_open), (download_uncached_messages), (modest_ui_actions_on_send): Adapted. 2007-07-12 Armin Burgmeier * src/modest-error.h: Added MODEST_MAIL_OPERATION_FOLDER_EXISTS error. * src/modest-mail-operation.c: * src/modest-ui-actions.c: Check for already existing folder before querying the server, show error message from camel if the request still fails. This fixes projects.maemo.org bug NB#58701. 2007-07-12 Murray Cumming * src/modest-tny-account-store.h: * src/modest-tny-account-store.c: Added modest_tny_account_store_forget_password_in_memory(), (get_server_accounts): Called modest_tny_account_store_forget_password_in_memory() when creating a new account, so that new passwords will be used, instead of us thinking that it's a second request as a result of a failed password again. 2007-07-12 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message): If the message is in drafts then open it in an edit window instead of a view window. This fixes projects.maemo.org bug NB#63005. 2007-07-12 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message): Avoided a harmless g_warning(). 2007-07-12 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message), Pass the modest account name, not the TnyAccount display name to modest_msg_view_window_new() so that the reply feature works, fixing projects.maemo.org bug NB#62892. * src/gnome/modest-msg-view-window.c: (modest_msg_view_window_new), (modest_msg_view_window_new_with_header_model): * src/maemo/modest-msg-view-window.c: (modest_msg_view_window_new_with_header_model), (modest_msg_view_window_new): * src/modest-ui-actions.c: (reply_forward): * src/widgets/modest-msg-view-window.h: * src/widgets/modest-window.c: (modest_window_set_active_account): Rename an account parameter to modest_account_name to make this clearer. 2007-07-11 Murray Cumming * src/modest-ui-actions.h: * src/modest-ui-actions.c: (headers_action_delete): Moved some code into modest_do_message_delete(). * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message): Call modest_do_message_delete(), hoping that this would cause messages to be really deleted from search instead of just marked with strike through. Does not seem to help. 2007-07-11 Armin Burgmeier * src/widgets/maemo-folder-view.c (modest_folder_view_on_map): Set priv->reselect to FALSE prior to calling modest_folder_view_select_first_inbox_or_local() to prevent endless recursion and thus a crash on startup. 2007-07-11 Armin Burgmeier * src/maemo/modest-account-settings-dialog.h: Include to fix the build (at least for me). * src/maemo/modest-platform.c (modest_platform_run_new_folder_dialog): Use "New FolderN" as default suggested name if "New folder" already exists, with N being the first free number, though never exceed "New folder99" in which case we just fall back to "New Folder" even though it already exists. This fixes projects.maemo.org bug NB#58663. 2007-07-11 Murray Cumming * src/maemo/modest-account-view-window.c: (on_new_button_clicked): Do not use gtk_dialog_run() to avoid modality hang problems. This fixes projects.maemo.org bug NB#62778. 2007-07-11 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Ignore the wrong (for now) secure-smtp setting in the presets - just default to requiring secure authentication for SMTP, because that is most common. 2007-07-11 Johannes Schmid * src/widgets/modest-folder-view.c: (filter_row) Do not show drafts folder (see UI specs) 2007-07-11 Johannes Schmid * src/modest-ui-actions.c: Remove call to show_non_move_folders(TRUE) which was moved to a wrong place and also not necessary. * src/widgets/modest-folder-view.c: (filter_row) Guess folder type and hide Sent & Outbox if necessary. Fixed project.maemo.org NB#57328 2007-07-11 Murray Cumming * src/modest-ui-actions.h: * src/modest-ui-actions.c: (modest_ui_actions_on_delete_message): Move some code into a new modest_ui_actions_refresh_message_window_after_delete() function so we can use it from elsewhere. * src/dbus_api/modest-dbus-callbacks.c: (on_idle_delete_message), (on_delete_message): Used an idle handler, as we do for the other D-Bus method handlers. Call modest_ui_actions_refresh_message_window_after_delete() if the deleted message was open in a window. This fixed projects.maemo.org bug NB#62862. 2007-07-11 Murray Cumming * src/modest-main.c: (main): Only show the UI at the start if the showui command line option was given. For instance, run-standalone src/modest showui Otherwise, we wait for the top_application D-Bus method to be sent by hildon-desktop when the application is selected from the menu. This allows us to run without a UI when osso-global-search uses our D-Bus methods. 2007-07-11 Murray Cumming * src/dbus_api/modest-dbus-api.h: Added a define for a top-application D-Bus method. * src/dbus_api/modest-dbus-callbacks.c: (on_top_application), (modest_dbus_req_handler): Handle the top-application D-Bus method, which might be an undocumented D-Bus signal sent by hildon-desktop when it starts the application from the menu. But I am not sure and I need to test it on the device, because my scratchbox does not have the application in the menu now. This method shows the main window, so that it can be invisible when started, for instance, just for email searching from osso-global-search. * src/maemo/modest-main-window.c: (restore_settings), (modest_main_window_new): Do not show the window immediately upon creation. We show it later. * src/modest-widget-memory.c: (save_settings_paned): Try (unsuccessfully) to avoid saving the paned position when it is not even visible. (restore_settings_paned): Do not allow a silly paned position. This seems necessary when not showing the window at first. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_top_application.c: (main): Test for the new D-Bus method. 2007-07-10 Murray Cumming * src/modest-ui-dimming-rules.c: (modest_ui_dimming_rules_on_new_msg), (modest_ui_dimming_rules_on_reply_msg), (modest_ui_dimming_rules_on_delete_msg), (modest_ui_dimming_rules_on_details), (modest_ui_dimming_rules_on_view_window_move_to), (modest_ui_dimming_rules_on_view_previous), (modest_ui_dimming_rules_on_view_next), (_invalid_folder_for_purge): Added checks before casting the window. This looks like an actual logic error in _invalid_folder_for_purge(), because it tries to use a ModestMainWindow as a message window. 2007-07-10 Murray Cumming * src/maemo/modest-account-settings-dialog.c: (show_error): Use the same implementation as in modest-easysetup-wizard.c: (on_entry_invalid_character): The logical ID contains a %s. Guessed what it should be. (on_entry_max), (check_data), (on_response): Adapt to changed show_error(). (create_page_account_details): Really call modest_validating_entry_set_func() on the correct widgets. * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_invalid_character): Fix the logical ID here too. (create_page_account_details), (create_page_user_details): Really call modest_validating_entry_set_func() on the correct widgets. * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Do not try to use the account if it is NULL. 2007-07-10 Johannes Schmid * src/modest-ui-actions.c: (create_move_to_dialog), (modest_ui_actions_on_main_window_move_to), (modest_ui_actions_on_msg_view_window_move_to): * src/widgets/modest-folder-view.c: (modest_folder_view_init), (filter_row), (modest_folder_view_show_non_move_folders): * src/widgets/modest-folder-view.h: Hide Sent & Outbox folder in "move to"-dialog. Does not work for the Sent folder yet as it does not report the correct folder type. 2007-07-10 Johannes Schmid * src/maemo/modest-msg-edit-window.c: (init_window): Fixed bora build 2007-07-10 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (show_error): Take a parent widget instead of a parent window, and implement this with hildon_banner_show_information() instead. Non-Maemo builds can just ifdef that there. This fixed projects.maemo.org bug NB#62766. (on_entry_invalid_character): Use show_error() again instead of using hildon directly, and use the _CS() macro to use the correct translation domain. (create_account), (check_for_supported_auth_methods), (on_entry_max): Pass a widget instead od a window to show_error(). 2007-07-10 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Adapt to the changed tinymail API, using the new TnyAccount* parameter. This allows us to show the server name in the error message, fixing projects.maemo.org bug NB#62904. Also, use the appropriate logical ID message for the account protocol. 2007-07-10 Murray Cumming * src/modest-tny-account-store.c: (on_idle_wrong_password): A compilation fix, though the build wasn't broken for me. 2007-07-09 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_send_receive): Do not try to unref a NULL folder store, to avoid a runtime warning. This seems to happen sometimes when changing accounts settings. 2007-07-09 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_instance_init), (modest_tny_account_store_finalize), (on_account_settings_hide), (on_idle_wrong_password): Use a GHashTable to ensure that we only show one account settings dialog per modest account. This avoids us having a dialog open for both the store and transport accounts, or due to repeated get_password() calls that shouldn't happen anyway. 2007-07-09 Murray Cumming * src/maemo/modest-maemo-utils.c: (on_hide), (modest_maemo_show_dialog_and_forget): Handle the response, because the window is not even hidden by default. * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): * src/modest-ui-actions.c: (modest_ui_actions_on_accounts): Use modest_maemo_show_dialog_and_forget() instead of gtk_dialog_run() which seems to prevent some modality problems. * src/maemo/modest-main-window.c: (on_sendqueue_error_happened): Ignore user cancellation errors. * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_server_account_get_password() and modest_server_account_get_has_password() to avoid direct use of conf enums. * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_init): Store the notebook so we can use it later. Added modest_account_settings_dialog_switch_to_user_info(). * src/modest-tny-account-store.c: (get_password): When the password in the account settings is wrong (we think), show the relevant page of the account settings dialog, in the mainloop. However, we currently get many of these at once because cancel does not seem to cancel. (forget_password): Do not forget the password from the account settings, because this causes side-effects when tinymail seems to call it at strange time, maybe because of how we are cancelling get_password(). (modest_tny_account_store_alert): Ignore user cancellations. 2007-07-09 Murray Cumming * src/maemo/modest-maemo-utils.h: * src/maemo/modest-maemo-utils.c: Added modest_maemo_show_information_note_and_forget() for use instead of gtk_dialog_run() when the response is not needed, to avoid an extra mainloop which could cause a hang. * src/maemo/modest-main-window.c: (on_sendqueue_error_happened): Use the logical IDs for the error message, though they are not specific enough. Note that I used modest_maemo_show_information_note_and_forget() because gtk_dialog_run() caused a hang here (the window did not close). This fixes projects.maemo.org bug NB#62646. 2007-07-09 Murray Cumming * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_account_mgr_get_store_protocol(). * src/maemo/modest-account-view-window.c: (on_delete_button_clicked): Show different warning text depending on the protocol (IMAP or POP) as per the UI spec. Use a HildonNote instead of a GtkDialog, which fixes the truncation, fixing projects.maemo.org bug NB#59037. 2007-07-09 Murray Cumming * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file): Set the file chooser dialog title as per the UI spec. This fixes proejcts.maemo.org bug NB#59056. 2007-07-07 Armin Burgmeier * src/maemo/easysetup/modest-easysetup-wizard.c: Translate ckdg_ib_maximum_characters_reached from correct package. * src/modest-ui-actions.c: Show an error message when a folder could not be created. Tinymail does not give us specific error codes about what has gone wrong, so we assume that a folder with that name already exists, though there might be other reasons. 2007-07-06 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Use the new TNY_ACCOUNT_ERROR_TRY_CONNECT_CERTIFICATE error code to give a more exact error message that can be partly translated. 2007-07-05 Murray Cumming * src/maemo/modest-address-book.c: (select_email_addrs_for_contact): Specify a default window size for the select-email-address dialog, so that it is probably big enough for the title. This should fix projects.maemo.org bug NB#62277. 2007-07-05 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_complete_easysetup): Use gtk_widget_set_size() request to ensure that the text wraps even in osso 1.1. 2007-07-05 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_invalid_character), (create_page_account_details), (create_page_user_details): Use new API of ModestValidatingEntry. But for some reason the banner is not shown. I will have to investigate that further. * src/widgets/modest-validating-entry.c: (on_insert_text), (modest_validating_entry_set_func): * src/widgets/modest-validating-entry.h: Added a new callback function to be able to react to prevented characters whitespaces to e.g show a banner. 2007-07-05 Armin Burgmeier * src/maemo/modest-account-settings-dialog.c: Use the notify::value notification of HildonNumberEditor instead of remembering the port number. Thanks to Johannes for pointing this out. 2007-07-05 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: Check if there are any user changes before showing a confirmation dialog (projects.maemo.org NB#60946) 2007-07-05 Armin Burgmeier * src/maemo/modest-account-settings-dialog.c: Remember custom port number at the beginning of the dialog and set the modified flag at the end if the port number has changed. This is necessary because HildonNumberEditor does not support notification when the value has changed. 2007-07-05 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_main_window_move_to): Check whether the source folder needs a connection before asking anything else. Correct the check for the destination folder so that it succeeds when online. This fixed projects.maemo.org bug NB#61645. 2007-07-05 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_send): Call modest_platform_connect_and_wait() to ask for a connection if necessary, to fix projects.maemo.org bug NB#62439. 2007-07-05 Murray Cumming * src/modest-tny-account.c: (on_connection_status_changed): Really do not use tny_device_force_offline() here. See the previous comment. 2007-07-04 Murray Cumming * src/modest-tny-account.c: (on_connection_status_changed): Do not use tny_device_force_offline() when tinymail says that something went wrong with the connection. It seems to report this unnecessarily. 2007-07-04 Murray Cumming * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_init): Use gtk_widget_set_size_request(), because gtk_label_set_max_width_chars() does not seem to have any effect in osso 1.1 (though it works in Maemo Bora). This fixes bug projects.maemo.org NB#59212. 2007-07-04 Johannes Schmid * src/maemo/modest-connection-specific-smtp-window.c: Fix UI specification problems with projects.meamo.org NB#60479 2007-07-04 Murray Cumming * src/modest-ui-actions.c: (open_msg_cb): Add a printf() to provide a clue when this has failed, because the error dialog is not always shown (at least in earlier version). (modest_ui_actions_get_msgs_full_error_handler): prinf() the actual GError message, because the generic error dialog is not helpful. I am getting 'This message is not currently available (can't let a new connection go online)' when trying to open an IMAP message. (_modest_ui_actions_open): Offer a connection when some messages would have to be downloaded and we are offline. 2007-07-04 Johannes Schmid * src/widgets/modest-folder-view.c: Don't check for MERGE type anymore as we use the correct type now. NOTE: For the last two changes you need to update your tinymail copy because of API changes! 2007-07-04 Johannes Schmid * src/modest-tny-local-folders-account.c: Set the folder type for the TnyMergeFolder to TNY_MERGE_FOLDER_OUTBOX (see projects.maemo.org NB#61580) 2007-07-04 Murray Cumming * src/modest-tny-account.c: (on_connection_status_changed): Commented out the call to modest_platform_connect_and_wait() because this seems to always hang, and I would like to know if this is the only thing that causes a hang when showing the connection dialog. It is not very useful anyway. 2007-07-04 Murray Cumming * src/maemo/modest-msg-view-window.c: (modest_msg_view_window_select_next_message): * src/modest-platform.h: * src/maemo/modest-platform.c: Added modest_platform_connect_and_wait(), which calls tny_maemo_conic_device_connect() always in the main thread, by calling it in an idle handler and waiting for the idle handler to run. It should be in the main thread because it uses GTK+ UI code. It just returns TRUE if the device is already online. There is some nasty code to ensure that subsequent calls to modest_platform_connect_and_wait() just wait for the first one to finish, by checking repeatedly in another idle handler. This is necessary, because other threads (or even the main thread, via another idle handler) can call modest_platform_connect_and_wait() while modest_platform_connect_and_wait() is running. (modest_platform_connect_and_wait_if_network_account), (modest_platform_connect_and_wait_if_network_folderstore): Convenience functions that calls modest_platform_connect_and_wait() if the account or folder might want network access. * src/modest-mail-operation.c: (modest_mail_operation_update_account): * src/modest-ui-actions.c: (download_uncached_messages), (modest_ui_actions_on_rename_folder), (delete_folder), (modest_ui_actions_on_main_window_move_to), (modest_ui_actions_on_msg_view_window_move_to): * src/widgets/modest-folder-view.c: (drag_and_drop_from_folder_view): Offer a connection if we are offline. * src/modest-tny-account.c: (on_connection_status_changed): Document this as only handling errors during network operations in progress, and replace the idle code with a simple call to modest_platform_connect_and_wait(), which does this instead. 2007-07-03 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_get_special_folder): (util_on_idle), Handle the GError so we can see when tny_folder_store_get_folders() fails, as it currently does while something else is connecting. Added util_run_in_main_thread_and_wait() which uses an idlen handler and mainloop to ensure that the function is called in the main thread. (on_connection_status_changed): Use util_run_in_main_thread_and_wait() to make sure that we call attempt the connection in the mainloop only, which might solve some hangs. 2007-07-03 Murray Cumming (modest_tny_account_store_get_tny_account_by): Do not allow accounts to be found by their display name. This is never useful. * src/modest-tny-account-store.c: (on_account_removed): Find the account by its ID, instead of trying to use its ID as its display name. * src/modest-tny-account-store.h: * src/modest-tny-account.c: (modest_tny_account_get_special_folder): Add a g_warning() when tny_folder_store_get_folders() returns an empty list for the maildir. * src/modest-tny-send-queue.c: (modest_tny_send_queue_get_outbox): Add a g_warning() when this returns NULL, because that it not allowed by tinymail. 2007-07-02 Armin Burgmeier * src/maemo/easysetup/modest-easysetup-wizard.c: Added a confirmation note when trying to cancel the wizard. This fixes projects.maemo.org bug NB#60946. 2007-07-02 Murray Cumming * src/modest-tny-account.h: * src/modest-tny-account.c: (modest_tny_account_new_from_server_account), (modest_tny_account_new_from_server_account_name), (modest_tny_account_new_from_account): Added a TnyCamelSession parameter, because this must now be set before setting the proto. This is usd in modest_tny_account_new_from_server_account(). It avoids a (maybe harmless) warning in camel_session_get_service() caused by tny_camel_transport_account_prepare(). * src/modest-tny-account-store.c: (get_server_accounts): Pass the new session parameter. 2007-06-30 Johannes Schmid * src/maemo/modest-connection-specific-smtp-edit-window.c: (on_value_changed), (modest_connection_specific_smtp_edit_window_init): Fixed project.maemo.org bug NB#60479 by using "notify::value" instead of "changed" for now 2007-06-29 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Handle the TnyAccount::"connection-status-changed" signal, which tinymail now uses to request a connection when it needs one, and which it uses to tell us that something is wrong with the connection, so we can force the accounts offline to prevent further problems. * src/modest-defs.h: * src/modest-init.c: (init_default_settings): * src/modest-mail-operation.c: (modest_mail_operation_update_account): * src/modest-main.c: (on_show): Do not try to connect explicitly on startup. This should not be necessary anymore. Do not set the conf key that determined this (it was always TRUE and not set anywhere else). * src/modest-ui-actions.h: Remove unused and unimplemented modest_ui_actions_on_online_toggle_toggled(). 2007-06-29 Murray Cumming * src/modest-mail-operation.c: Fixed a crash when canceling a mail receive operation. 2007-06-27 Murray Cumming * src/maemo/modest-maemo-utils.c: Replaced a busy wait while waiting for supported secure authentication methods from server by gtk_dialog_run(), saving CPU time and a potential race condition. 2007-06-26 Armin Burgmeier * src/maemo/modest-maemo-utils.h: * src/maemo/modest-maemo-utils.c: Added a ModestMaemoUtilsGetSupportedSecureAuthenticationError with CANCELED as only error code to tell the calling code when the user canceled the operation. * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: * src/maemo/easysetup/modest-easysetup-wizard.c: Do not show an error message if the retrieval of secure authentication methods was canceled by the user. Perform the check before saving anything to configuration to not end up with half-committed configuration changes, do not show a "Saving to configuration failed" note when authentication methods could not be retrieved. * src/maemo/modest-main-window.c: Fixed a crash on startup when built with old hildon. 2007-06-26 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (add_folders_to_list): Only return the first level of folders under accounts, because the osso-global-search UI spec doesn't want the rest. This fixed projects.maemo.org bug NB#61811. 2007-06-26 Murray Cumming * src/modest-tny-account-store.c: * src/modest-tny-account-store.h: Added modest_tny_account_is_memory_card_account(). * src/maemo/modest-main-window.c: (create_details_widget): Show the same information items for the memory card as we show for the local-folders, to fix projects.maemo.org bug NB#59307. 2007-06-26 Murray Cumming * src/modest-tny-account-store.c: (get_password): Added some checks for NULL to maybe prevent crashes, though I think it was Philip's last commit that actually prevented the crash here when creating a first new account. But the new account is still not usable (no messages are shown) until a restart of the application. 2007-06-26 Murray Cumming * src/maemo/modest-maemo-global-settings-dialog.c: (idle_select_default_focus): * src/modest-mail-operation.c: (idle_notify_progress), (idle_notify_progress_once), (idle_notify_update_account_queue), (set_last_updated_idle), (update_account_thread), (notify_get_msgs_full), (get_msgs_full_destroyer), (get_msgs_full_thread): * src/widgets/modest-attachment-view.c: (get_size_idle_func): * src/widgets/modest-header-view.c: (idle_notify_headers_count_changed_destroy), (idle_notify_headers_count_changed): Use gdk_threads_enter() and gdk_threads_enter_leave() in all idle handlers, because some other thread could be blocking the GDK lock, so that it can do GUI stuff. 2007-06-26 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_idle_mail_to), (on_idle_compose_mail), (on_compose_mail), (on_idle_open_message), (on_idle_send_receive), (on_idle_open_default_inbox): * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file_noninteractive): Use gdk_threads_enter() and gdk_threads_leave() in all the idle handlers, to prevent a hang. I don't quite understand why these are necessary, beause we should already be in the main loop. I guess something outside of the main loop is taking the lock. * tests/dbus_api/test_compose_mail.c: (main): Use file:// prefixes so we are really using URIs, and use files that are more likely to exist. 2007-06-26 Murray Cumming * tests/dbus_api/Makefile.am: Fix the build of the tests. This was necessary because configure.ac now defines different variables. 2007-06-26 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client.c: * libmodest-dbus-client/libmodest-dbus-client.h: Removed libmodest_dbus_client_send_mail() because it is not used by anything. libmodest_dbus_client_compose_mail() is what things actually use. * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_handler): * tests/dbus_api/Makefile.am: * tests/dbus_api/test_send_mail.c: Removed the MODEST_DBUS_METHOD_SEND_MAIL D-Bus method. 2007-06-26 Murray Cumming * src/modest-init.c: (modest_init_local_folders): For memory-card (or other non local-folders) maildir accounts, always create an Archive folder, so that there is somewhere to put messages. This should be less confusing, because the user does not need to guess that the need to create a folder. 2007-06-25 Johannes Schmid * src/maemo/easysetup/modest-wizard-dialog.c: (init): Fixed icon size by using (50, 50) which is the same as defined by newer hildon-libs 2007-06-25 Armin Burgmeier * src/widgets/modest-window-mgr.c: * src/modest-init.c: * configure.ac: Correctly recognize hildon-notify presence and fixed the build without it being installed. 2007-06-25 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_search): Fix the build. Sorry. * src/modest-ui-actions.c: (modest_ui_actions_on_new_msg), (reply_forward_cb): Initialize variables to fix the build. * src/modest-tny-account-store.c: (modest_tny_account_store_get_tny_account_by): Fix the account URI comparison (a silly typo) so that email search results can be opened when there are more than one account. 2007-06-25 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_search), (libmodest_dbus_client_get_folders): Use large timeouts (2 minutes) instead of 1 second, because the search gets folders and messages from the server, which can take a long time. When it times out, osso-global-search will report no results. We need to specify whether we should search only cached information (maybe with a user preference), and the osso-email-search-plugin API should really be improved to allow that option, and to allow results to be delivered asynchronously in batches. 2007-06-25 Murray Cumming * src/maemo/easysetup/modest-wizard-dialog.c: (init): Fix a typo to fix the osso 1.1. build. See the TODO comment though - GTK_ICON_SIZE_DIALOG is probably the wrong size. 2007-06-25 Murray Cumming * src/modest-search.c: (modest_search_folder): Ignore a seach folder that is an empty string. D-Bus seems to give us these instead of NULL. 2007-06-25 Johannes Schmid * src/dbus_api/modest-dbus-callbacks.c: * src/maemo/easysetup/modest-easysetup-wizard.h: * src/maemo/easysetup/modest-wizard-dialog.c: (init): * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): * src/maemo/modest-maemo-global-settings-dialog.c: (on_range_error): * src/maemo/modest-maemo-utils.c: (modest_maemo_utils_setup_images_filechooser): * src/maemo/modest-main-window.c: (create_details_widget): * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file_noninteractive), (modest_msg_edit_window_color_button_change), (modest_msg_edit_window_set_zoom): * src/modest-mail-operation.c: (update_account_thread): * src/modest-tny-account-store.c: * src/modest-tny-account.c: * src/widgets/modest-global-settings-dialog.c: * src/widgets/modest-window.h: Fixed build on bora! 2007-06-25 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (on_dbus_method_search): * src/modest-search.c: (modest_search_folder), (modest_search_all_accounts): Actually search only in the specified folder, doing a simple match on the folder ID. * src/modest-search.h: Added a folder field to the ModestSearch struct, and added some documentation. 2007-06-22 Armin Burgmeier * src/maemo/modest-maemo-utils.h: * src/maemo/modest-maemo-utils.c: Added a GError parameter to modest_maemo_utils_get_supported_secure_authentication_methods. * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/modest-account-settings-dialog.c: Show correct error if one occured, not just "Server does not support secure authentication". 2007-06-22 Murray Cumming * src/modest-tny-account-store.c: (get_password): Restored the call to tny_account_set_user() because Philip seems to have stopped this from crashing (by not using the freed string). It still does not work, but now we can test it. 2007-06-22 Murray Cumming * src/maemo/modest-msg-edit-window.c: (init_window): Comment out use of an uninitialzed GtkScrolledWindow variable, to fix the build and stop a crash. Yet again. 2007-06-22 Murray Cumming * src/modest-tny-account-store.c: (get_password): Remove the call to tny_account_set_user() because this actually crashes. As mentioned in the last commit, it is known to not work anyway. 2007-06-22 Murray Cumming * src/modest-tny-account-store.c: (get_password): Use tny_account_set_username() to tell tinymail that the username might have changed too. But tinymail ignores this: see projects.maemo.org bug #61463. * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Remove the useless attempt to reset the connection when changing the username, and improve the comments. Save the changed username to gconf at least, so it is used when Modest is restarted. 2007-06-21 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (add_folders_to_list): Do not use a query, so that we get all folders, including for POP and local-folders. They work as search criteria too. This fixes projects.maemo.org bug NB#57740. 2007-06-21 Murray Cumming * src/maemo/modest-platform.c: (modest_platform_on_new_msg): Comment out the use of hildon_notification_set_sound() because it is not declared, to fix the build. Warnings are serious, people. 2007-06-21 Armin Burgmeier * src/maemo/modest-maemo-utils.h: * src/maemo/modest-maemo-utils.c: Added a username parameter to the modest_maemo_utils_get_supported_secure_authentication_methods() to query authentication methods for a specific user. This should fix projects.maemo.org bug NB#61369. * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/modest-account-settings-dialog.c: Adjusted calls to that function. 2007-06-21 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client.h: * libmodest-dbus-client/libmodest-dbus-client.c: (modest_dbus_message_iter_get_search_hit), (libmodest_dbus_client_search): Reorganised and commented this. Removed modest_search_hit_free() from the public API because it is not needed. Added libmodest_dbus_client_get_folders() and modest_folder_result_list_free(). * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter): Commented. Moved most code to on_dbus_method_search() and added on_dbus_method_get_folders(). * src/maemo/modest-platform.c: (modest_platform_init): Commented the use of the extra D-Bus handler. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_get_folders.c: New test for libmodest_dbus_client_get_folders(). This seems to return an empty list at the moment. That could be the same error that causes the message list to be empty sometimes. This should help with projects.maemo.org bug NB#57740. 2007-06-21 Armin Burgmeier * src/modest-mail-operation.c: Do not call modest_mail_operation_queue_cancel_all() in _cancel() but do instead notify the operation's end after having set the status to CANCELED for the operation queue to listen on. This fixes a deadlock when there were mail operations in the queue during its finalization. * src/modest-singletons.c: Reordered uninitialization of the account manager to happen after the mail operation queue was uninitialized because the mail operation's in the queue might still try to access the account manager (see modest_mail_operation_notify_end()). This fixes a potential crash when terminating the application. 2007-06-21 Murray Cumming * src/modest-search.c: (search_mime_part_and_child_parts): Moved some code here so we can search recursively in child folders. (modest_search_folder): Search in the message as a mime part, instead of just its child mime parts. (read_chunk), (search_mime_part_ogs): Check how many bytes were read, to prevent an endless loop. Searching in message bodies now works. This finishes the fix for projects.maemo.org bug NB#61007. 2007-06-20 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_details): Add a g_warning when the item is not a folder. * src/modest-ui-dimming-rules.c: (modest_ui_dimming_rules_on_details): Dim the Email/Details menu item when selected item is not a folder (for instance, an account), because the UI spec only talks about folders. I am not sure what the UI spec wants, so this might not totally fix projects.maemo.org bug NB#60794. 2007-06-20 Murray Cumming * src/maemo/easysetup/modest-easysetup-country-combo-box.c: (load_from_file): Sort the list. The unsorted list would be more noticeable in non-English locales. * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file): Initialize a variable to avoid a warning and fix the build. * src/maemo/modest-progress-bar-widget.c: (modest_progress_bar_widget_set_progress): Avoid a division by zero, to avoid a g_warning, and probably to avoid a crash. 2007-06-20 Murray Cumming * src/modest-search.c: (modest_search_folder): Check for a GError when calling tny_folder_get_headers(), to show that this is not the cause of later failure. 2007-06-20 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter): Actually set the body query instead of the subject query. * src/modest-search.c: (search_mime_part_ogs), (search_mime_part_strcmp): Remove extra space from the text/* regex, which would probably cause it to fail if we got this far. (modest_search_folder): Use simple #ifdefs instead of the function pointer, to simplify the code. Warn when tny_mime_part_get_parts() returns an empty list, which seems to be causing search-in-body to fail. 2007-06-20 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client.h: Document the folder struct item. * src/dbus_api/modest-dbus-callbacks.c: (find_message_by_url): Better debug message when the folder cannot be found. This should help with fixing projects.maemo.org bug #61287. * src/modest-search.c: (add_hit): Do not leak the furl string. 2007-06-20 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_folder_selection_changed): Do not special-case TNY_MERGE_FOLDER here, because modest_tny_folder_get_account() already does that. This fixes projects.maemo.org bug NB#60955 (The smtp connections dialog was not shown when the Outbox was selected). 2007-06-19 Murray Cumming,,, * libmodest-dbus-client/libmodest-dbus-client.c: (_dbus_iter_get_string_or_null): Initialize the string variable in case this helps with Dirk's crash. 2007-06-19 Murray Cumming * src/dbus_api/modest-dbus-api.h: Add the attachments enum for send_mail, though it is not implemented yet (this function is maybe not even used), to avoid breaking ABI in future. * libmodest-dbus-client/libmodest-dbus-client.c: (get_attachments_string): Moved some code into this generic function. (libmodest_dbus_client_send_mail): Corrected the documentation. This really sends email. It is maybe not used. * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_mail), (on_send_mail): Use attachments. * src/widgets/modest-msg-edit-window.h: Improve the documentation. * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file_noninteractive): Convert the URI to a filename before using it, to fix projects.maemo.org bug NB#58233. 2007-06-19 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_copy): Initialize the continue_download variable to fix the build, and probably to fix randome behaviour. 2007-06-18 Armin Burgmeier * src/modest-tny-send-queue.h: * src/modest-tny-send-queue.c: Keep track of the status of messages in the queue so we can later show it in the UI. Replaced modest_tny_send_queue_msg_is_being_sent() by modest_tny_send_queue_get_msg_status(). * src/modest-ui-dimming-rules.c: Adjust for the replaced function. * src/modest-tny-account.c: Changed a cast to gpointer* to one to gpointer. This probably was not harmful, but just to be sure. 2007-06-18 Murray Cumming * src/maemo/modest-platform.c: (modest_platform_activate_uri): Fix the build, but leave the function broken on Bora, because hildon_uri_action_get_service() does not exist. osso_uri_action_get_service() does not exist either, it seems. 2007-06-18 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Uncommented the url debug output again, because it is useful for debugging, as I said in the comment. 2007-06-18 Murray Cumming * configure.ac: Do not require hildon-notify for Maemo Bora. It is not available. * src/modest-init.c: (modest_init_init_ui): Do not call notify_init() for Mameo Bora, to fix the build. 2007-06-17 Johannes Schmid * configure.ac: Fixed build with hildon < 0.99 * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): Check if the selected account is busy instead of checking all accounts * src/modest-account-mgr-priv.h: * src/modest-account-mgr.c: (modest_account_mgr_class_init), (modest_account_mgr_init), (compare_account_name), (modest_account_mgr_set_account_busy), (modest_account_mgr_account_is_busy): * src/modest-account-mgr.h: Added busy information to the account manager. It possible to set an account to busy or not busy now. * src/modest-mail-operation.c: (modest_mail_operation_finalize), (modest_mail_operation_update_account), (modest_mail_operation_notify_end): Set the account to busy/not busy depending on the operation state. * src/widgets/modest-account-view.c: (modest_account_view_finalize), (get_last_updated_string), (update_account_view), (on_account_busy_changed), (init_view): Show string "Refreshing..." if the account is currently busy. All this fixes projects.maemo.org bug NB#59711 2007-06-14 Armin Burgmeier * src/widgets/modest-attachments-view.h: * src/widgets/modest-attachments-view.c: Added modest_attachments_view_has_attachments() and fixed coordinate transformation in get_att_view_at_coords(). This fixes attachment selection. * src/widgets/modest-msg-view.c: Make use of modest_attachments_view_has_attachments() to decide whether to show attachments in the header. 2007-06-14 Johannes Schmid * src/maemo/modest-connection-specific-smtp-edit-window.c: (on_change), (on_combo_security_changed), (modest_connection_specific_smtp_edit_window_init), (modest_connection_specific_smtp_edit_window_set_connection), (modest_connection_specific_smtp_edit_window_is_dirty): * src/maemo/modest-connection-specific-smtp-edit-window.h: * src/maemo/modest-connection-specific-smtp-window.c: (on_button_edit): Show an comfirmation dialog for the smpt-edit-window if there are unsaved changes and the user hits cancel. (projects.maemo.org bug NB#60479) 2007-06-14 Armin Burgmeier * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/modest-account-settings-dialog.c: Show "invalid email address" info in banner instead of node, and select all the text as per UI spec. This fixes projects.maemo.org bug NB#60550. 2007-06-14 set REAL_NAME environment variable reviewed by: * src/maemo/modest-main-window.c: (_on_msg_count_changed): * src/modest-ui-actions.c: (folder_refreshed_cb): 2007-06-14 Murray Cumming * src/widgets/modest-folder-view.c: (filter_row): Explictly filter out the per-account outbox accounts. I don't know why these only sometimes show up, but now they should never show up in the UI. This should fix projects.maemo.org bug NB#60160. 2007-06-14 Murray Cumming * src/maemo/modest-main-window.c: (set_toolbar_mode): Prevent a warning when the toolbar does not exist yet. * src/modest-widget-memory.c: (save_settings_header_view): Added g_warnings() to help us to discover when we are trying to set an empty columns list in gconf. 2007-06-14 Murray Cumming * src/modest-init.h: * src/modest-init.c: Added modest_init_get_default_header_view_column_ids(). * src/modest-widget-memory.c: (restore_settings_header_view): Use the new function to get defaults, if the gconf key is empty, instead of not creating any columns. This seems to fix the empty right-hand pane problems. * src/widgets/modest-header-view.h: Improved documentation. 2007-06-13 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Revert the use of the display name as the account name, because this is generally wrong and would break the code that follows. 2007-06-13 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (check_for_supported_auth_methods), (on_before_next), (create_account): More correct fix for projects.maemo.org bug NB# 58991 Do not longer accept AUTH_PASSWORD as secure method and choose correct method when creating the account. 2007-06-13 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Fixed projects.maemo.org bug NB# 58991 2007-06-13 Murray Cumming * src/modest-init.c: (modest_init_init_core), (modest_init_local_folders): Fixed compilation errors. 2007-06-13 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in: Remove unnecessary lib/include, though it is good in principle when needed. * src/modest-init.c: (modest_init_one_local_folder), (modest_init_local_folders): * src/modest-init.h: Initialize the .modest library for memory cards, instead of just doing nothing for them. This should allow us to create folders there, fixing projects.maemo.org bug NB#59297. 2007-06-13 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_send_mail), (libmodest_dbus_client_mail_to), (libmodest_dbus_client_compose_mail), (libmodest_dbus_client_open_message), (libmodest_dbus_client_send_and_receive), (libmodest_dbus_client_open_default_inbox): Improved debug messages. * src/dbus_api/modest-dbus-callbacks.c: (find_message_by_url), (on_idle_open_message), (modest_dbus_req_handler), (search_result_to_message), (modest_dbus_req_filter): * src/modest-search.c: (add_hit), (modest_search_folder), (modest_search_all_accounts): Improved debug messages. * tests/dbus_api/test_open_message.c: (main): Improved comments. * src/modest-tny-account-store.c: (modest_tny_account_store_get_tny_account_by): Initialize a variable to fix the build. 2007-06-13 Murray Cumming 2007-06-12 Murray Cumming * src/modest-tny-account-store.c: (get_server_accounts): Call modest_tny_local_folders_account_add_merged_outbox_folders() even when there are no accounts, so that the Outbox folder is always visible. This fixes projects.maemo.org bug NB#60158. 2007-06-12 Murray Cumming * src/maemo/modest-main-window.c: (create_details_widget): Use the mcen_va_never logical ID. 2007-06-12 Murray Cumming * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_default_inbox), (on_open_default_inbox), (modest_dbus_req_handler): Added a new OpenDefaultInbox method. * libmodest-dbus-client/libmodest-dbus-client.h: * libmodest-dbus-client/libmodest-dbus-client.c: Added libmodest_dbus_client_open_default_inbox() to call the new dbus method. This should be useful to projects.maemo.org bug NB#57214, though it should maybe be used by a new osso-email-interface function. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_open_default_inbox.c: Added a test for the new function. 2007-06-12 Murray Cumming * src/modest-account-mgr.c: (on_key_change): Append to the list, not to NULL, so that the signals get all the keys. This should not actually change any behaviour because we currently update everything when anything changes. 2007-06-12 Murray Cumming * src/widgets/modest-folder-view.c: (text_cell_data), (icon_cell_data), (filter_row), (on_selection_changed), (cmp_rows), (find_inbox_iter): If tinymail tells us that the folder is a non-specific TNY_FOLDER_TYPE_NORMAL then do an extra check on the name. This causes the inbox to be selected at startup, fixing part of projects.maemo.org bug NB#56305. * src/modest-ui-dimming-rules.c: (modest_ui_dimming_rules_on_tools_smtp_servers): * src/modest-ui-dimming-rules.h: Added a callback function to dim the SMTP servers menu item. * src/maemo/modest-main-window-ui-dimming.h: Used the function, so that the SMTP Servers menu item is dimmed when there are no accounts, as a future version of the UI spec will require. This fixes projects.maemo.org bug NB#56305. 2007-06-11 Johannes Schmid * src/maemo/modest-maemo-utils.c: (modest_maemo_utils_get_supported_secure_authentication_methods): Added label to dialog instead of unreadable title * src/maemo/modest-main-window.c: (sync_accounts_cb), (modest_main_window_new): Fixed projects.maemo.org bug NB#58576 by moving previous fix out of dead code. * src/modest-account-mgr.c: (modest_account_mgr_has_accounts): * src/modest-account-mgr.h: Added method to avoid code duplication * src/modest-ui-actions.c: (modest_ui_actions_on_accounts), (modest_ui_actions_on_send_receive): Use modest_account_mgr_has_accounts 2007-06-11 Murray Cumming * src/maemo/easysetup/modest-presets.c: (modest_presets_get_info_server_security): Do not report secure auth if there is none. * src/modest-protocol-info.c: Use the defines for the gconf key names for secure authentication. This was not working because we were writing Password and reading password, and the check was case sensitive. With this, gmail now works for receiving and sending when created via easysetup. 2007-06-11 Murray Cumming * src/maemo/easysetup/modest-presets.c: (modest_presets_get_info_server_security): Correct the key name for SecureSmtp, because it seems to be case-sensitive. * src/maemo/easysetup/modest-wizard-dialog.c: (create_title): Do not try to get the 0th notebook page if there are 0 pages, to avoid a g_warning(). 2007-06-11 Murray Cumming * src/maemo/modest-platform.c: (modest_platform_on_new_msg): Prevent use of the new notification feature for now, because it currently shows one dialog for each new email, which is annoying. 2007-06-11 Murray Cumming * src/maemo/easysetup/modest-easysetup-provider-combo-box.c: (easysetup_provider_combo_box_fill): Ask for the providers for mmc=0 when no country was selected, so that we show the global ones. * src/maemo/easysetup/modest-presets.c: (modest_presets_get_providers): Return only the global providers, not all providers when mmc=0 was requested. 2007-06-11 Murray Cumming * src/maemo/easysetup/modest-easysetup-provider-combo-box.c: (easysetup_provider_combo_box_fill): Remove debug code that showed the provider ID in the combo. * src/maemo/easysetup/modest-wizard-dialog.c: (create_title): Do not show the page numbers, because it would be confusing when we add the 2 extra pages for the custom setup, when the user chooses the "Other" provider. This fixes projects.maemo.org bug NB#59028 * src/modest-init.c: (modest_init_init_core), (modest_init_local_folders): * src/modest-init.h: * src/modest-tny-account.c: (modest_tny_account_new_for_local_folders): Do not create default folders for the memory card. This should fix projects.maemo.org bug NB#59328. 2007-06-11 Murray Cumming * src/modest-account-mgr.c: (modest_account_mgr_finalize): Free the changed_conf_keys string items. They are already freed in the idle handler if that runs first. 2007-06-11 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Check that the server name is not NULL, because I just saw a password dialog with (null) as the server name. * src/modest-tny-folder.[h|c]: Added modest_tny_folder_is_memory_card_folder(). * src/modest-ui-dimming-rules.c: (modest_ui_dimming_rules_on_new_folder): Do not dim the new folder context menu item for memory cards, as per the UI spec (section 7.4). This should fix projects.maemo.org bug NB#59297. 2007-06-10 Johannes Schmid * src/maemo/modest-main-window.c: (sync_accounts_cb): Fixed projects.maemo.org bug NB#58576 (not yet activated as there is another problem with the code, see Murray's comment at line 772) 2007-06-08 Murray Cumming * src/maemo/easysetup/modest-easysetup-country-combo-box.h: * src/maemo/easysetup/modest-easysetup-country-combo-box.c: (on_model_foreach_release), (easysetup_country_combo_box_finalize), (load_from_file), (easysetup_country_combo_box_init), (easysetup_country_combo_box_get_active_country_ids), (on_model_foreach_select_id): Store a GSList* of IDs in the model row, instead of just one ID, to avoid duplicate country names in the UI. * src/maemo/easysetup/modest-easysetup-provider-combo-box.h: * src/maemo/easysetup/modest-easysetup-provider-combo-box.c: (easysetup_provider_combo_box_fill): Adapt to use a list rather than a single ID, avoiding duplicate providers. * src/maemo/easysetup/modest-easysetup-wizard.c: (on_combo_account_country): Adapt to use a list. 2007-06-08 Murray Cumming * src/modest-account-mgr-priv.h: Added a timeout id and a GSList of keys changed in the last X seconds. * src/modest-account-mgr.h: * src/modest-account-mgr.c: (on_timeout_notify_changes), (on_key_change), (modest_account_mgr_class_init), (modest_account_mgr_init), (modest_account_mgr_finalize): As the keys are changed, save them in a GSList* and signal that GSList* further every X seconds, to batch changes, to allow us to do just one update per batch. This should fix bug projects.maemo.org bug NB#56472 and bug NB#56941 and other (UI-blocking) delays when changing account settings. * src/modest-tny-account-store.c: (on_account_changed): Adapted to changed signal signature. * src/modest-conf.c: (modest_conf_set_list), (modest_conf_on_change): Reenable notification. (modest_conf_maemo_fake_on_change): Comment out the hack that notified immediately instead of asynchronously. * src/widgets/modest-account-view.h: * src/widgets/modest-account-view.c: (update_account_view): Select the previously-selected account ID, if possible. This fixes projects.maemo.org bug NB#56933. (on_account_changed), (on_account_removed), (modest_account_view_select_account): Remove the block/unblock functions because they were not useful. * src/maemo/modest-account-view-window.c: (on_delete_button_clicked), (on_edit_button_clicked), (on_new_button_clicked): Remove the use of the non-working block/unblock. 2007-06-08 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Improve the error dialog to show Incorrect Account Settings, which seems clearer, and say that the internal error message (to be removed from the dialog later) is often misleading. I have confirmed that projects.maemo.org bug NB#58543 is no longer a problem. * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Uncomment the printf of the URL because this is so useful for debugging on the device. * src/widgets/modest-serversecurity-combo-box.c: (modest_serversecurity_combo_box_fill): Correct a logical ID. 2007-06-08 Murray Cumming * src/modest-mail-operation.c: (modest_mail_operation_send_new_mail): Added a comment about a nasty but apparently harmless message. Details added to the wiki g_warnings() page. 2007-06-08 Murray Cumming * src/modest-tny-send-queue.c: (modest_tny_send_queue_add), (modest_tny_send_queue_class_init): Do not use the priv struct because it is empty, to avoid g_warnings about a non-existant priv struct. * src/modest-tny-account-store.c: (modest_tny_account_store_get_server_account), (modest_tny_account_store_get_transport_account_for_open_connection ): Do not try to get transport server accounts for local folders, because they don't have any. This avoids a g_warning(). * src/maemo/modest-main-window.c: (modest_main_window_notify_send_receive_initied), (on_configuration_key_changed): * src/maemo/modest-msg-edit-window.c: (on_delete_event): * src/modest-defs.h: * src/modest-mail-operation.c: (modest_mail_operation_update_account): * src/modest-tny-account-store.h: * src/modest-tny-account.c: (modest_tny_account_get_special_folder), (modest_tny_account_new_for_local_folders), (modest_tny_account_new_for_per_account_local_outbox_folder): * src/modest-tny-folder.c: (modest_tny_folder_is_local_folder): * src/modest-tny-local-folders-account.c: (add_account_folders_to_merged_folder): * src/modest-ui-actions.c: (modest_ui_actions_on_new_msg), (reply_forward_cb), (modest_ui_actions_on_save_to_drafts), (modest_ui_actions_on_send): * src/widgets/modest-folder-view.c: (update_model): Rename MODEST_ACTUAL_LOCAL_FOLDERS_ACCOUNT_ID to MODEST_LOCAL_FOLDERS_ACCOUNT_ID and rename modest_tny_account_store_get_tny_account_by_account() to modest_tny_account_store_get_server_account() to make the code clearer. 2007-06-07 Marcus Bauer * src/dbus_api/modest-dbus-api.h: changed MODEST_DBUS_NAME in order to get dbus auto-activation to work * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file_noninteractive): added g_warning in case the file to be attached does not exist * tests/dbus_api/test_compose_mail.c: (main): removed obsolete comment, added generic files as test case 2007-06-07 Murray Cumming * src/modest-tny-account-store.c: (get_server_accounts): Create the local folders account only once, not once for each outbox, and not only when there are some outboxes. 2007-06-07 Murray Cumming * src/widgets/modest-folder-view.c: (update_model): Comment out some code that is causing a crash at startup. Sergio says that he is fixing this. 2007-06-07 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (on_before_next): * src/maemo/modest-account-settings-dialog.c: (create_page_outgoing), (modest_account_settings_dialog_set_account_name), (save_configuration): - Fixed handling of the "Use secure authentication" toggle to comply with the ui specification. See also projects.maemo.org bug NB#58400 - Restore the Secure connection setting combo correctly when loading the settings dialog * src/maemo/modest-maemo-utils.c: (on_camel_account_get_supported_secure_authentication), (modest_maemo_utils_get_supported_secure_authentication_methods): Fixed a crasher if operation is canceled * src/modest-protocol-info.c: (modest_protocol_info_is_secure), (modest_protocol_info_auth_is_secure): * src/modest-protocol-info.h: Added two new methods to determine if a protocol/auth method is secure/encrypted in the sense of the "Use secure authentication" toggle. 2007-06-07 Murray Cumming * src/modest-tny-account-store.h: * src/modest-tny-account-store.c: Added modest_tny_account_store_get_local_folders_account(). * src/modest-tny-folder.h: * src/modest-tny-folder.c: (modest_tny_folder_get_account): Added this replacement for tny_folder_get_account() which returns the local-folders account for TnyMergeFolders, to avoid the warning about the unimplemented get_account_func() vfunc(). (modest_tny_folder_get_rules), * src/modest-ui-actions.c: (modest_ui_actions_on_folder_selection_changed): * src/modest-mail-operation.c: (modest_mail_operation_remove_folder), (modest_mail_operation_xfer_folder), (modest_mail_operation_rename_folder), (modest_mail_operation_get_msg), (modest_mail_operation_get_msgs_full), (modest_mail_operation_remove_msg), (modest_mail_operation_xfer_msgs), (modest_mail_operation_refresh_folder): Use modest_tny_folder_get_account() instead of tny_folder_get_account(). 2007-06-07 Murray Cumming * src/modest-account-mgr-helpers.c: (get_security_for_conf_string), (modest_server_account_set_security): * src/modest-defs.h: Add comments explaining that our UI spec means TLS when it says Normal, so these do not look like errors. * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Use the new tinymail 'wrapped' option for regular SSL, and use the new tinymail 'tls' option for TLS. This should fix projects.maemo.org bug NB#58460. 2007-06-06 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Correct the position of the gconf sanity check warning. (on_button_edit_advanced_settings): Show the dialog immediately, instead of using the g_idle_add() hack, because this does not seem to be necessary on osso 1.1. It might even work on Maemo Bora if the problems were actually caused by something other than maemo's gconf. This fixes projects.maemo.org bug #59022. 2007-06-06 Murray Cumming * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_default_account): Do not check that the account exists if there is no default account (NULL), to fix a runtime warning. 2007-06-06 Murray Cumming * src/widgets/modest-folder-view.c: (update_model): Do not unref the treemodel before we have finished with it. This prevents a valgrind warning and an occasional crash at startup. 2007-06-06 Marcus Bauer * libmodest-dbus-client/libmodest-dbus-client.h: added libmodest_dbus_client_compose_mail() * src/dbus_api/modest-dbus-callbacks.c: (on_idle_compose_mail), (on_compose_mail): added functions needed for SendAsMail() functionality * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_attach_file_noninteractive): non interactively attaching files to message edit window * src/widgets/modest-msg-edit-window.h: * tests/dbus_api/Makefile.am: added test_compose_mail.c * tests/dbus_api/test_compose_mail.c: (main): 2007-06-05 Johannes Schmid * src/modest-account-view.c: Fixed bug projects.maemo.org bug NB#59307 2007-06-05 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (get_serverport_incoming), (on_before_next), (create_account): * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_set_account_name): * src/maemo/modest-maemo-utils.c: (on_camel_account_get_supported_secure_authentication_status), (on_camel_account_get_supported_secure_authentication), (on_secure_auth_cancel), (modest_maemo_utils_get_supported_secure_authentication_methods): Implemented security authentication for settings and easysetup. 2007-06-05 Murray Cumming * src/maemo/modest-main-window.c: (create_details_widget): Show the total size for memory card accounts too, instead of showing the name again. Fixes bug projects.maemo.org bug NB#59307. 2007-06-05 Murray Cumming * src/Makefile.am: * src/modest-tny-simple-folder-store.c: * src/modest-tny-simple-folder-store.h: Removed. * src/modest-tny-local-folders-account.h * src/modest-tny-local-folders-account.c: Added a derived TnyAccount for the local-folders maildir, with an extra TnyMergedFolder containing the folders of the per-account outbox store accounts. * src/modest-tny-account-store.c: (get_server_accounts): Add the outboxes to the special local folders account after creating it. * src/modest-tny-account.c: (modest_tny_account_new_for_local_folders): Create the derived account when creating the main local-folders account. * src/maemo/modest-main-window.c: (create_details_widget), (modest_main_window_set_contents_style): Adapted to the use of the derived account instead of the folder store. * src/modest-ui-actions.c: (modest_ui_actions_on_folder_selection_changed): * src/modest-ui-dimming-rules.c: (modest_ui_dimming_rules_on_new_folder): * src/widgets/modest-folder-view.c: (text_cell_data), (icon_cell_data), (filter_row), (update_model), (get_cmp_rows_type_pos): * src/modest-tny-send-queue.c: (modest_tny_send_queue_new): Do not get the priv struct, because no priv struct has been set, to avoid a runtime warning. * src/maemo/modest-platform.c: (modest_platform_show_help): Replace #ifelse with #else, to fix a warning, to fix the build. 2007-06-05 Christian Kellner * libmodest-dbus-client/libmodest-dbus-client.c: Fix small typo in doc (why do you always see them AFTER committing stuff?) 2007-06-05 Christian Kellner * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_search): Initialize hit list with NULL. Also set folder list to "" if NULL was supplied. Add documentation. 2007-06-03 Christian Kellner * libmodest-dbus-client/libmodest-dbus-client.c: (modest_search_hit_list_free): Make it save to call it with NULL. * src/dbus_api/modest-dbus-callbacks.c: * src/modest-search.c: Return full ModestSearchHits as the search result list not TnyHeader since can't be around withouth the correspoding TnyFolder. 2007-06-03 Johannes Schmid * src/maemo/easysetup/modest-easysetup-wizard.c: (on_before_next): Added currently commented code to check for secure auth * src/maemo/modest-account-settings-dialog.c: (on_response), (save_configuration), (show_ok): Fixed projects.maemo.org bugs NB #59248 and #59251 * src/maemo/modest-maemo-utils.c: (on_camel_account_get_supported_secure_authentication_status), (on_camel_account_get_supported_secure_authentication), (modest_maemo_utils_get_supported_secure_authentication_methods): * src/maemo/modest-maemo-utils.h: Moved get_supported_secure_authentication() method here to be able to use it from easysetup wizard. * src/modest-pair.c: (on_pair_compare_as_string): Should compare string with first part of pair and not strcmp pairs which will crash. * src/modest-protocol-info.c: (modest_protocol_info_protocol_is_store): * src/modest-protocol-info.h: Added modest_protocol_info_get_auth_protocol_name() 2007-06-03 Armin Burgmeier * src/modest-mail-operation.c: (modest_mail_operation_get_msgs_full): Set priv->account also when only retrieving a single message. This avoids a crash when canceling the operation. (modest_mail_operation_notify_end): Do not explicitely remove the operation from the queue but only emit the progress_changed signal. The queue itself listens to that signal to remove the operation when it is finished. This reduces coupling and removes a potential deadlock when modest_mail_operation_notify_end() is called from the queue itself. If that is a problem performance-wise, I would suggest to implement a status-changed signal or something. * src/modest-mail-operation-queue.c: Make sure to never call a function from another file while the queue is locked. This (hopefully) fixes another deadlock when exiting the application while retrieving mail. 2007-06-03 Johannes Schmid * src/dbus_api/modest-dbus-callbacks.c: (modest_dbus_req_filter): Fixed build if libogs is not available 2007-06-03 Christian Kellner * libmodest-dbus-client/libmodest-dbus-client.h: * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_delete_message): Implement deletion of messages (Client side). (modest_search_hit_free), (modest_search_hit_list_free): Utility functions to free the result hits. * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: (on_delete_message), (modest_dbus_req_handler): Implement deletion of messages (Server side). * tests/dbus_api/test_search.c: (main): Free the hits. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_delete_message: Add little test for the message deletion logic 2007-06-03 Armin Burgmeier * src/modest-mail-operation-queue.c: Fixed a deadlock in finalize() when the operation queue was not empty. projects.maemo.org bug NB#58976. 2007-06-03 Armin Burgmeier * src/widgets/modest-account-view.c (on_account_default_toggled): Toggle default account column explicitely instead of waiting for gconf notification (which is currently ignored). This should fix projects.maemo.org bug NB#56910 for now. It should probably be removed when gconf notifications are re-enabled. 2007-06-03 Christian Kellner * libmodest-dbus-client/libmodest-dbus-client.c: Removed debugging spew. * src/dbus_api/modest-dbus-callbacks.c: Added debugging info. * src/modest-search.c: (modest_search_all_accounts): Use tny_account_store_get_accounts () on the account store to get all accounts which is the way to get all accounts. * tests/dbus_api/test_search.c: (main): Make it possible to supply the search term on the command line. 2007-06-03 Christian Kellner * libmodest-dbus-client/libmodest-dbus-client.c: * libmodest-dbus-client/libmodest-dbus-client.h: Implement searching for mesages over raw dbus. (Client side) * src/dbus_api/Makefile.am: * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: * src/dbus_api/modest-dbus-callbacks.h: Search framework (Server side). Also implement on_idle_open_message(). * src/maemo/modest-platform.c: (modest_platform_init): Prepare for raw dbus/osso rpc interaction. * src/modest-search.h: Changed minsize from unspecific guint to guint32. * src/modest-search.c: (add_header): Added strange hack which magically made tnymail work. (modest_search_folder), (modest_search_account), (modest_search_all_accounts): Implement helper functions to search all accounts, specific account and folder. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_open_message.c: Read url to open from commandline. * tests/dbus_api/test_search.c: Implement small test for dbus search stuff 2007-06-02 Armin Burgmeier * src/maemo/modest-account-settings-dialog.c: Changed window title to include account type and account title. This fixes projects.maemo.org bug NB#59000. * src/maemo/modest-account-view-window.c: Set a title for the window. 2007-06-02 Armin Burgmeier * src/maemo/easysetup/modest-easysetup-wizard.c: Always prefill incoming and outgoing server name based on email address and server types as long as the names have not been edited manually. This fixes projects.maemo.org bug NB#58671. 2007-06-02 Armin Burgmeier * src/maemo/easysetup/modest-easysetup-wizard.c: Added a note that the server type cannot be changed in future to the incoming details page when creating an account. This fixes projects.maemo.org bug NB#59029. 2007-06-02 Armin Burgmeier * src/maemo/easysetup/modest-easysetup-wizard.c: Made labels wrapping and assigned max width chars so that they wrap instead of being truncated. Fixes projects.maemo.org bug NB#56126. 2007-06-02 Armin Burgmeier * src/maemo/modest-connection-specific-smtp-window.c: Add an introductory note to the connection specific smtp servers dialog, as section 8.12 of the email UI specification requires. This fixes projects.maemo.org bug NB#59212. 2007-06-01 Murray Cumming * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): Check for running mail operations, and offer to cancel them, as per the UI spec. This fixes projects.maemo.org bug NB#59041 . However, I suspect that tinymail may still use the network connection in ways that we cannot detect or cancel. But it should at least adapt to changes fairly well. 2007-06-01 Murray Cumming * src/modest-tny-account-store.c: (recreate_all_accounts), (get_cached_accounts), (get_server_accounts): Do more sensible ref-counting of the temporarily-cached outbox accounts list. This seems to fix a crash when entering the password when the password was wrong. 2007-06-01 Murray Cumming * src/gnome/modest-main-window.c: (connect_signals): * src/modest-tny-account-store.c: (get_password), (modest_tny_account_store_alert): Added comments and clues and commented-out code about how we currently fail to deal with connection errors and wrong passwords, and how we should. 2007-06-01 Murray Cumming * src/widgets/modest-retrieve-combo-box.c: (modest_retrieve_combo_box_fill): Correc the choices for POP and IMAP. This fixes projects.maemo.org bug NB#58472 . 2007-06-01 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_complete_easysetup): (create_page_complete_custom): Correct the last commit, putting the correct sentences in the correct pages. 2007-06-01 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_complete_custom): Show the second sentence of text (mcen_ia_easysetup_complete). This fixes projects.maemo.org bug NB#59023 . 2007-06-01 Murray Cumming * src/modest-account-mgr.c: (modest_account_mgr_add_account): Set the leave-on-server conf key by default. This fixes projects.maemo.org bug NB#59258 . 2007-06-01 Murray Cumming * src/maemo/modest-account-view-window.c: (on_delete_button_clicked): Use the new emev_nc_delete_mailboximap logical ID for the confirmation messages. Fixed projects.maemo.org bug NB#59037 . 2007-06-01 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_caption_new_with_asterisk): * src/maemo/modest-account-settings-dialog.c: (create_caption_new_with_asterisk): Uncomment the code to add the asterisk, because they are no longer in the translated text in the .po file. Fixes projects.maemo.org bug NB#59202 . (update_incoming_server_title): Add an asterisk here too. 2007-06-01 Murray Cumming * src/maemo/modest-maemo-global-settings-dialog.c: (current_connection): Check that we are even connected before trying to get the current connection name, to prevent a warning. * src/maemo/modest-platform.c: (modest_platform_connect_and_wait): Change the comments because tny_maemo_conic_device_connect() is now meant to block. * src/modest-mail-operation.c: (modest_mail_operation_update_account): Call modest_platform_connect_and_wait() to make sure we have a connection and fail if we can't connect. 2007-05-31 Murray Cumming * src/maemo/modest-main-window.c: (on_account_store_connecting_finished): Do not try to get the connection ID if we are not really connected. I am surprised that this signal handler is called when we are not connected. 2007-05-31 Murray Cumming * src/modest-error.h: * src/modest-ui-actions.c: (modest_ui_actions_get_msgs_full_error_handler): Renamed an enum, added comments, added an enum for retrieve-limit errors. * src/modest-mail-operation.c: (foreach_add_item), (internal_folder_observer_update), (update_account_thread), (modest_mail_operation_get_msgs_full): (modest_mail_operation_update_account), Added comments about how this works, and some code that should (but does not) check the retrieve-limit. See the TODO comment. 2007-05-31 Murray Cumming * src/modest-ui-actions.c: (modest_ui_actions_on_help): Initialize help_id to fix the build. Warnings are good. 2007-05-31 Murray Cumming * src/widgets/modest-hbox-cell-renderer.c: (modest_hbox_cell_renderer_append): * src/widgets/modest-vbox-cell-renderer.c: (modest_vbox_cell_renderer_append): Fix the last commit by doing an extra ref. 2007-05-31 Murray Cumming * src/widgets/modest-hbox-cell-renderer.c: (modest_hbox_cell_renderer_append): * src/widgets/modest-vbox-cell-renderer.c: (modest_vbox_cell_renderer_append): For glib < 2.10, use gtk_object_sink() instead of g_object_ref_sink(), to fix the build with Maemo Bora. However, there seems to be a remaining crash, probably due to reference counting errors. 2007-05-30 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_new_for_local_folders): Use hildon_file_system_info_async_new() to get a better name for the memory card account, setting it as the account name. The timing seems to work, but this is probably not the best place to do this. See the TODO comment. * src/maemo/modest-main-window.c: (create_details_widget): * src/widgets/modest-folder-view.c: (text_cell_data): Use the tny account name instead of hardcoding a name. 2007-05-30 Christian Kellner * src/modest-search.c: (modest_search): Correctly set part_search_func even if we have already parsed the query and thus a valid OgsTextSearcher object. 2007-05-30 Christian Kellner * configure.ac: Search and check for libogs. * src/Makefile.am: Incooparte the ogs build env. * src/modest-mime-part-search-stream.c: * src/modest-mime-part-search-stream.h: Removed since we do the real searching now in modest-search.c. * src/modest-search.c: * src/modest-search.h: Implement support for ogs. We use that if available and requested and fall back to modest_text_utils_utf8_strcmp (). The search logic should now handle the corner case when the search term is spread across multiple reads. Also the logic in modest_search () was corrected to search all requested fields until one is found. 2007-05-30 Murray Cumming * src/modest-defs.h: Define MODEST_MCC1_VOLUMEPATH and MODEST_MCC1_VOLUMEPATH_URI. * src/modest-init.h: * src/modest-init.c: Made modest_init_local_folders() take a path and be public so we can iniitialize maildir folders on arbitrary volumes. * src/modest-local-folder-info.h: * src/modest-local-folder-info.c: (modest_local_folder_info_get_maildir_path): Add a path parameter. * src/modest-tny-account.c: (modest_tny_account_new_for_local_folders): Take a path parameter, though NULL still means the standard local-folders path on the local volume. * src/modest-tny-account-store.c: (modest_tny_account_store_instance_init): Connect to GnomeVfsVolumeMonitor signal so we can detect mount/unmount of the MMC1 card, and do an update of all accounts when that happens. (get_server_accounts): If the MMC1 card is mounted, create a store account for this too, so it shows up in the treeview. 2007-05-28 Murray Cumming * src/maemo/modest-maemo-global-settings-dialog.c: (current_connection): * src/widgets/modest-global-settings-dialog.c: (current_connection_default): Use the enum values instead of 0, 1 and -1, to make the code clearer. * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_connection_specific_smtp): Make this code more robust. * src/modest-runtime.h: * src/modest-runtime.c: Added modest_runtime_remove_all_send_queues(). * src/maemo/modest-main-window.c: (on_account_store_connecting_finished): Recreate the send queues, using the appropriate transport accounts for this new connection. Some futher adapting might be needed if the old send queues are not automatically stopped at this point. * src/modest-tny-account-store.c: (get_server_accounts): Create the connection-specific transport accounts, so that they can be found later by their ID. * src/modest-tny-account.h: * src/modest-tny-account.c: Added modest_tny_account_new_from_server_account_name(). modest_tny_account_new_from_server_account(): Do not create the send queues here, because they will be recreated anyway when the connection changes for the first time. 2007-05-28 Murray Cumming * src/modest-local-folder-info.h: * 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): Take a modest account name instead of a server TnyAccount, so we can have per-modest-account rather than per-transport-account outboxes. We must make sure that we change or recreate the exisitng send queues when the connection changes for connection-specific transport accounts. * src/modest-tny-account-store.c: (create_per_account_local_outbox_folders): Create outboxed per modest account, not per transport account. * src/modest-tny-account.h: * src/modest-tny-account.c: (modest_tny_account_get_special_folder): For outboxes, get the parent modest account name. The account is ignored for other folders. (modest_tny_account_new_for_per_account_local_outbox_folder): Take a modest account name rather than a server TnyAccount. 2007-05-25 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Call modest_runtime_get_send_queue() immediately after creating transport accounts, so that they start trying to send email from the outbox as soon as possible at startup. This is probably what we want. * src/modest-mail-operation.c: (update_account_thread): * src/modest-runtime.c: (modest_runtime_get_send_queue): * src/modest-tny-send-queue.c: (modest_tny_send_queue_try_to_send): * src/modest-tny-send-queue.h: * src/modest-ui-actions.c: (modest_ui_actions_do_send_receive), (modest_ui_actions_on_send): Added comments about how sending works, though it needs some more work. 2007-05-25 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_get_special_folder): Add TODO because this fails when the network is busy. (modest_tny_folder_store_get_local_size): Fix an incorrect type check. * src/modest-ui-actions.c: (modest_ui_actions_on_smtp_servers): Do not try to show this window when there is no active account. The UI specs does not tell us what to do in this case. 2007-05-24 Murray Cumming * Makefile.am: * po/POTFILES.in: * src/maemo/Makefile.am: * src/widgets/Makefile.am: Some dist fixes. 2007-05-24 Murray Cumming * src/maemo/modest-connection-specific-smtp-window.c: (on_button_edit): Make the code clearer, to prevent a double free. 2007-05-24 Murray Cumming * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_set_account_name), Check the connection-specific smtp servers checkbox if there are any. * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): Start with a suitable port number. * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_account_mgr_get_has_connection_specific_smtp(). (modest_account_mgr_set_connection_specific_smtp), (modest_account_mgr_remove_connection_specific_smtp), (modest_account_mgr_get_has_connection_specific_smtp), (modest_account_mgr_get_connection_specific_smtp): Set/Get the list of connection-specific smtp server accounts in the account, rather than the server account conf dir. This fixes bug projects.maemo.org bug NB#58263 . * src/modest-tny-account-store.c: (create_per_account_local_outbox_folders): Do not call get_server_accounts() if there are no server accounts yet, to prevent an infinite loop when there are no accounts. Document that one must be called before the other. 2007-05-24 Murray Cumming * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_default_account): Make sure that at least one account is always the default, if there are any enabled accounts. This is just a sanity check that shouldn't be necessary. * src/modest-account-mgr-priv.c: (_modest_account_mgr_account_from_key): Unescape the conf key to get the real account name. For instance, this is an issue if a space was in the account name, which can happen because the account name is generated from the display name. (_modest_account_mgr_get_account_keyname): Always escape the account name. * src/modest-account-mgr.c: (modest_account_mgr_account_names): Unescape the conf keys to get the real account names. For instance, previously the is-default radio button in the accounts list was not checked for any accounts at first. This fixes that, and might fix several similar bugs. 2007-05-23 Murray Cumming * src/modest-ui-actions.c: (set_active_account_from_tny_account): Removed some debug printfs. 2007-05-23 Murray Cumming Modest on-disk outbox directories are now here, for instance: $HOME/.modest/outboxes//outbox $HOME/.modest/outboxes//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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * src/modest-search.h: Correct bit shifting in the ModestSearchFlags enum. 2007-05-21 Murray Cumming * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * 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 * src/modest-protocol-info.c: * src/modest-protocol-info.h: Adde enum-specific get functions, instead of using a ModestProtocolType enum parameter. * src/gnome/modest-account-assistant.c: * src/gnome/modest-store-widget.c: * src/gnome/modest-store-widget.h: * src/gnome/modest-transport-widget.c: * src/gnome/modest-transport-widget.h: * src/maemo/easysetup/modest-easysetup-servertype-combo-box.c: * src/maemo/easysetup/modest-easysetup-servertype-combo-box.h: * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-store-widget.c: * src/maemo/modest-store-widget.h: * src/maemo/modest-transport-widget.c: * src/maemo/modest-transport-widget.h: * src/modest-account-mgr-helpers.c: * src/modest-account-mgr-helpers.h: * src/modest-account-mgr.c: * src/modest-account-mgr.h: * src/modest-tny-account.c: * src/modest-tny-folder.c: * src/widgets/modest-account-view.c: * src/widgets/modest-retrieve-combo-box.c: * src/widgets/modest-retrieve-combo-box.h: * src/widgets/modest-secureauth-combo-box.c: * src/widgets/modest-serversecurity-combo-box.c: * src/widgets/modest-serversecurity-combo-box.h: * tests/check_account-mgr.c: Use the specific functions, and use the re-renamed enum values for GNOME too. 2007-05-15 Murray Cumming * src/modest-pair.h: * src/modest-pair.c: Added modest_pair_list_find_by_first_as_string(), so we can get the second based on the first. * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: Added get_supported_secure_authentication_methods(), though it is mostly commented-out for now until the necessary API is committed to tinymail. (modest_account_settings_dialog_set_account_name), (save_configuration): Request the supported authentication methods from the server, so we can choose a working method. * src/modest-tny-account-store.h: * src/modest-tny-account-store.c: (modest_tny_account_store_get_session): Rename from tny_account_store_get_session(). 2007-05-14 Murray Cumming * src/modest-protocol-info.h: Split the ModestProtocol enum into ModestProtocol, ModestSecureConnection, and ModestSecureAuthentication. There was no need to have these unrelated values in one enum. * src/: many files: Adapted to changed enum. This makes the code a bit clearer, and the compiler could catch some errors. 2007-05-14 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Show the detailed internal camel error message when an error happens during the configuration, so that our testers can give us more clues. For instance, in projects.maemo.org bug NB#56910 . 2007-05-14 Murray Cumming * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Adapt to changed tinymail API: change tny_account_set_mech() to tny_account_set_secure_auth_mech(). 2007-05-14 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_set_account_name), (save_configuration): For the incoming secure authentication checkbox, use PASSWORD for unchecked, and CRAM-MD5 for checked, after I reread the UI specification. PLAIN does not seem to be supported for most IMAP servers anyway, and I am not sure what it would mean. However, we probably need to discover which of the secure-authentication mechanisms are supported by the server, instead of hard-coding CRAM-MD5. * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_server_account_data): * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Use tny_account_set_mech() to set secure-authentication methods, with some special-casing for IMAP, based on my observations of how evolution behaves. * src/modest-account-mgr-helpers.h: * src/modest-account-mgr.c: * src/modest-defs.h: Comment that the URI is only used for local folders. 2007-05-11 Murray Cumming * src/maemo/modest-main-window.c: (on_account_update): Make the gchar* parameter const, just to be neat. * src/modest-text-utils.c: (modest_text_utils_inline): End g_strconcat() with NULL, as its documentation says. This is almost certainly the cause of my crash at startup on the device. Interestingly, valgrind doesn't tell us about these errors. 2007-05-11 Murray Cumming * scripts/build-packages: Added more precise comments about how to use this script, though I still get this error: dpkg-genchanges: error: cannot open .dsc file ../tinymail_1.0-svn1938.dsc: No such file or directory error building tinymail 2007-05-11 Murray Cumming * src/maemo/modest-main-window.c: (on_account_update): Very slight cleanup, hoping to make it simpler to discover what causes a crash here sometimes. * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Set the port. Added comments about the options and a TODO comment because I need to find out how to specify the secure authentication method. 2007-05-11 Marcus Bauer * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in: changed CFlags paths form modest to libmodest 2007-05-10 Murray Cumming * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_server_account_data), (modest_account_mgr_free_server_account_data): * src/modest-account-mgr-helpers.h: * src/modest-account-mgr.c: (modest_account_mgr_add_server_account): * src/modest-defs.h: * src/modest-tny-account.c: (modest_tny_account_new_from_server_account): Determine the options for tny_camel_account_add_option() here, based on the settings, rather than storing them directly in gconf. 2007-05-10 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Show a more friendly error dialog now that we expect (from the tinymail documentation) to get the UNKNOWN_ALERT error. Add explanatory comments. 2007-05-10 Murray Cumming * src/maemo/modest-main-window.c: (on_account_update): Check that account_name is not NULL, to prevent a crash at startup that I am seeing on the N800. I do wonder why it is NULL. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_user_details): * src/maemo/modest-account-settings-dialog.c: (create_page_user_details), (create_page_outgoing): * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Use HILDON_GTK_INPUT_MODE_INVISIBLE with password entries, which might do something useful with the on-screen keyboard. 2007-05-10 Murray Cumming * src/maemo/modest-main-window.c: (on_account_update): Avoid adding a menu item to priv->accounts_popup if accounts_popup is NULL, to avoid lots of warnings. However, it probably should not be NULL. 2007-05-09 Murray Cumming * src/modest-tny-account-store.c: (on_account_changed): Correct the signature of this signal handler. 2007-05-09 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Show a HildonNote instead of a GtkDialog for Maemo. 2007-05-09 Murray Cumming * src/widgets/modest-account-view.h: * src/widgets/modest-account-view.c: (on_account_changed), (on_account_removed). Added a boolean flag, set/unset by modest_account_view_block_conf_updates(), modest_account_view_unblock_conf_updates() to prevent unnecessary updates, but this is not very useful because the gconf notifications are so delays (maybe only on Maemo Bora). So auto-updating is turned off, and these functions do an explicit update when necessary. However, something else is still doing too much work when adding/removing accounts, probably in another part of the application. * src/maemo/modest-account-view-window.c: (on_delete_button_clicked), (on_edit_button_clicked), (on_new_button_clicked): Use the new functions. 2007-05-09 Murray Cumming * src/modest-account-mgr-helpers.c: (modest_account_mgr_set_first_account_as_default): Sort the list of names alphabetically-by-title, so we choose the first one based on that. * src/widgets/modest-account-view.c: (init_view): Sort the TreeModel alphabetically by the title. This fixes projects.maemo.org bug NB#56418 . * src/modest-account-mgr-priv.c: (_modest_account_mgr_account_from_key): * src/modest-account-mgr.c: (on_key_change): Initialize variables to avoid a valgrind error, and possible random behaviour. 2007-05-09 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Handle the new TNY_ACCOUNT_STORE_ERROR error domain. I will update the tinymail documentation to say that this can be expected. Handle the new TNY_ACCOUNT_STORE_ERROR_UNKNOWN_ALERT error code. It is not pretty, and should not happen, but I would prefer to know when it does. 2007-05-09 Murray Cumming * configure.ac: When using the older hildon version, probably on Bora, require gnome-vfs-module-2.0, which is the old provider of gnome-vfs-mime.h, to fix the build. * src/widgets/modest-attachment-view.c: (modest_attachment_view_set_part_default): Initialize variables, to fix the build. 2007-05-09 Marcus Bauer * src/dbus_api/modest-dbus-callbacks.c: (on_idle_open_message): Implemented the prototype. Can be tested with tests/dbus_api/test_open_message: 2007-05-08 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_instance_init), (get_password): * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Do not store the password in gconf, because this function is called for non-remembered passwords. Actually use the cached (in the hash map) password instead of releasing it. The password will now not be remembered if it is asked via the protected password dialog, as per the UI spec. 2007-05-08 Murray Cumming * src/modest-defs.h: * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_server_account_get_username_has_succeeded(), modest_server_account_set_username_has_succeeded(). (modest_server_account_set_username), Reset the has-succeeded flag if the username changes. * src/maemo/modest-account-settings-dialog.c: (save_configuration): * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_save_server_accounts): Use modest_server_account_set_username() instead of using modest_conf_set_string() directly, so that the has-succeeded flag is always reset. * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Dim the username entry if the username has ever worked, as per the UI spec. 2007-05-08 Murray Cumming * src/modest-tny-account-store.c: (get_password): * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Allow the username to be changed too, though there is more work to be done on exactly how this behaves. 2007-05-08 Murray Cumming * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_account_mgr_get_display_name(), modest_server_account_get_username(), modest_server_account_set_username(), modest_server_account_set_password(), modest_server_account_get_hostname() functions so we do not need to use the conf API directly. * src/maemo/modest-main-window.c: (connect_signals): Actually connect ot the ModestAccountStore::request-password signal, so that we show the dialog when the password is requested by Tinymail, for isntance if it is empty. * src/modest-marshal.list: * src/modest-tny-account-store.c: (modest_tny_account_store_class_init), (get_password), (modest_tny_account_store_alert): * src/modest-tny-account-store.h: * src/modest-ui-actions.h: * src/modest-ui-actions.c: (modest_ui_actions_on_password_requested): Change the signal parameters, so it is obvious that we are providing the non human-readable server name, and receiving both the username and password, though changing of the username is not yet implemented. Change the dialog UI to match the Maemo UI specifications, with #idfefing for the GNOME version. This should fix the projects.maemo.org bug NB#56209, though it does not work on Bora, because the gconf_client_get() for the password fails immediately after we save it with gconf_client_set(). 2007-05-08 Murray Cumming * configure.ac: * src/Makefile.am: Reverted the use of AM_CONDITIONAL(), because it caused an undefined symbol error: modest-platform.c:84: undefined reference to `modest_osso_cb_hw_state_handler 2007-05-08 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_alert): Adapt to the changed tinymail API, using a GError instead of a string message, so we can translate it in Modest. 2007-05-08 Murray Cumming * src/maemo/modest-address-book.c: (modest_address_book_check_names): * src/maemo/modest-msg-view-window.c: (modest_msg_view_window_clipboard_owner_change): * src/modest-init.c: (modest_init_init_ui): * src/modest-mail-operation.c: (modest_mail_operation_send_mail), (update_folders_cb), (modest_mail_operation_update_account): * src/modest-ui-actions.c: (modest_ui_actions_on_msg_link_hover), (modest_ui_actions_on_msg_attachment_clicked), (modest_ui_actions_on_msg_recpt_activated): * src/widgets/modest-header-view.c: (drag_data_get_cb): * src/widgets/modest-msg-view.c: (modest_msg_view_search), (modest_msg_view_search_next): * src/widgets/modest-recpt-editor.c: (modest_recpt_editor_on_button_release_event), (modest_recpt_editor_on_key_press_event): Commented-out unnecessary calls to g_message(). At this point we should only be seeing interesting errors on stdout. Debugging messages could be #ifdefed-out if they are still useful. 2007-05-07 Murray Cumming (modest_wizard_dialog_force_title_update): * src/maemo/easysetup/modest-wizard-dialog.h: * src/maemo/easysetup/modest-wizard-dialog.c: (set_property): For GTK+ 2.10, when present, connect to the GtkNotebook signals so we can update the title when appropriate. Otherwise the title is wrong if the pages are added after adding the notebook to the dialog. This must be a problem in HildonWizardDialog too. Added modest_wizard_dialog_force_title_update() for GTK+ 2.6. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_subsequent_customsetup_pages), (create_subsequent_easysetup_pages): Call modest_wizard_dialog_force_title_update() so that the title is correct even with GTK+ < 2.10. This fixes projects.maemo.org bug NB#56145 . 2007-05-07 Murray Cumming * src/maemo/modest-platform.c: (modest_platform_set_update_interval): Use the ALARM_EVENT_NO_DIALOG flag (awful lack of namespacing in this API) to prevent a useless %s dialog from being shown. 2007-05-07 Murray Cumming * src/widgets/modest-window.h: * src/widgets/modest-window.c: Added a save_state_func vfunc, and modest_window_save_state(), which invokes it. * src/widgets/modest-window-mgr.h: * src/widgets/modest-window-mgr.c: Added modest_window_mgr_save_state_for_all_windows(), which calls the save_state vfunc on all registered windows, if implemented. * src/gnome/modest-msg-edit-window.c: * src/gnome/modest-msg-view-window.c: * src/maemo/modest-msg-edit-window.c: * src/maemo/modest-msg-view-window.c: * src/maemo/modest-main-window.c: Specify the existing save_settings functions as implementations of ModestWindow::save_state_func(). * src/maemo/modest-osso-state-saving.c: modest_osso_save_state(): Call modest_window_mgr_save_state_for_all_windows(). This happens before enabling hibernation, for instance. We may need to do the same thing for restoring settings. 2007-05-07 Murray Cumming * src/widgets/modest-window-mgr.c: * src/widgets/modest-window-mgr.h: Added modest_window_mgr_prevent_hibernation_while_window_is_shown() and modest_window_mgr_get_hibernation_is_prevented(). * src/maemo/modest-main-window.c: (on_hildon_program_is_topmost_notify): Prevent hibernation (possible when the application goes to the background in the WM), if modest_window_mgr_get_hibernation_is_prevented() is TRUE. * src/maemo/easysetup/modest-easysetup-wizard.c: (modest_easysetup_wizard_dialog_init): * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_init): * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_init): * src/maemo/modest-signature-editor-dialog.c: (modest_signature_editor_dialog_init): Call modest_window_mgr_prevent_hibernation_while_window_is_shown() to prevent hibernation while any of these account settings dialogs are open. 2007-05-04 Murray Cumming * src/maemo/Makefile.am: * src/maemo/modest-osso-state-saving.c: * src/maemo/modest-osso-state-saving.h: Added modest_osso_load_state() and modest_osso_save_state() though they do nothing now. They should iterate through all the open windows and load/save their state. * src/modest-ui-actions.c: (modest_ui_actions_on_quit): For Mameo, save state when closing. * src/maemo/modest-main-window.c: (on_hildon_program_is_topmost_notify), (modest_main_window_new): Add a notification handler for the HildonProgram::is-topmost property, so we can allow hibernation when the application goes into the background. But we still need to detect when the accounts setup windows are open so we can stop hibernation when they are open. To do this, I also added the main window the HildonProgram. This might have other side-effects/benefits, and should maybe be done for other windows. * src/maemo/modest-osso-autosave-callbacks.h: * src/maemo/modest-osso-autosave-callbacks.c: (modest_on_osso_application_autosave): Add a libosso auto-save callback, though it does not do anything yet, and we might never need this to do anything. For instance, we already save drafts. * src/maemo/modest-platform.c: (modest_platform_init): Specify the libosso auto-save callback. 2007-05-03 Murray Cumming * src/maemo/modest-platform.c: (modest_platform_set_update_interval): * src/modest-defs.h: Store the alarmd cookie ID in gconf, because it aparently stays valid between application instances, so we can use this to remove and reset it later. According to a maemo-developers email from David Weinehall. 2007-05-03 Murray Cumming * configure.ac: Depend on libalarm for Maemo. * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_receive), (on_send_receive), (modest_dbus_req_handler): Handle a SEND_RECEIVE D-Bus method. * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_send_and_receive): * libmodest-dbus-client/libmodest-dbus-client.h: Add C convenience functions for calling the new D-Bus method. * src/modest-platform.h: * src/gnome/modest-platform.c: * src/maemo/modest-platform.c: Added modest_platform_set_update_interval(), which uses the alarmd API on Maemo. (modest_platform_init), Call modest_platform_set_update_interval(), using a hard-coded interval for now (until the global settings dialog is implemented), though I am not sure that this makes sense yet. 2007-05-02 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: (modest_osso_cb_hw_state_handler): * src/dbus_api/modest-dbus-callbacks.h: * src/maemo/modest-platform.c: (modest_platform_init): Registered (empty) callbacks for the osso hardware state D-Bus signals, in case this has some effect on the ability for Maemo to ping the application. 2007-05-02 Murray Cumming * src/modest-text-utils.c: (modest_text_utils_validate_recipient): Comment out an if() that checks a gchar for < 0, causing a build-breaking warning. It is probably a logic error, but I need to fix the build. 2007-05-02 Murray Cumming * src/modest-account-mgr.h: * src/modest-account-mgr.c: (modest_account_mgr_account_names): Add a gboolean enabled_only parameter, so we can get lists of onlt the enabled accounts. (modest_account_mgr_add_account),, (modest_account_mgr_account_with_display_name_exists): * src/maemo/modest-msg-edit-window.c: (get_transports): * src/modest-account-mgr-helpers.c: (modest_account_mgr_set_first_account_as_default): * src/modest-init.c: (init_default_account_maybe): * src/modest-tny-account-store.c: (get_accounts): * src/modest-ui-actions.c: (modest_ui_actions_on_accounts), (do_send_receive_auto), (modest_ui_actions_on_send_receive): * tests/check_account-mgr.c: (START_TEST): Provide the extra parameter, as appropriate. * src/widgets/modest-account-view.c: (update_account_view): Do not show disabled accounts (meaning that there is no way to enable/disable accounts in the UI (the feature is not in our UI specification), so we can use this internally only to mark unfinished or temporary account data. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Add boolean enable parameter, so we can specify FALSE to create the temporary account. (on_button_edit_advanced_settings): Create the temporary account as disabled. (on_before_next): When finishing, when there is a temporary account, just set it as enabled. Also, use a timeout to delay the showing of the dialog until gconf is likely to return correct information, due to a maemo gconf bug that is fixed in osso 1.1, but not yet in Bora. However, the dialog stays on screen after it is destroyed. * src/maemo/modest-account-settings-dialog.c: on_response(): Do not check for invalid data when cancelling. Use a hildon note instead of a dialog to complain about invalid data. Do not show the account-saved note if the account is disabled (a temporary account that will not really be saved for use until later.) 2007-04-30 Murray Cumming * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_account_mgr_unset_default_account(), Added modest_account_mgr_set_first_account_as_default(). * src/modest-account-mgr.c: (modest_account_mgr_remove_account): If it was the default account, unset the default account name. * src/maemo/modest-account-view-window.c: (on_delete_button_clicked): If it was the default account, set the first remaining account as the default instead. * src/maemo/modest-main-window.c: (on_account_update): Do not try to use a NULL account or a NULL default account, to prevent a crash. This should not happen now anyway. Bug #55343 in projects.maemo.org/bugzilla. 2007-04-30 Murray Cumming * src/widgets/modest-recpt-editor.c: (modest_recpt_editor_on_key_press_event): Put an #ifdef around the use of gtk_text_buffer_get_has_selection() (from GTK+ 2.10), and add a TODO comment for this. This fixes the build. * src/modest-ui-actions.c: Add do_send_receive(), though it might not be the best place for it. This will in future update all auto-update accounts, rather than just the current/default account, when that gconf key exists. (modest_ui_actions_on_send_receive): Offer the settings dialog (or wizard) if there are no accounts, before calling do_send_receive(). * src/modest-ui-actions.h: Specify the callback for the Send/Recieve menu item. * src/gnome/modest-main-window.c: (on_online_toggle_toggled): * src/maemo/modest-main-window-ui.h: * src/maemo/modest-main-window.c: (on_connection_changed), (sync_accounts_cb): Use do_send_receive() instead of calling the signal handler directly, becaue the signal handler does more. 2007-04-30 Murray Cumming * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_account_data): Add a more helpful error message, and comment, for the case that the account does not exist. * src/widgets/modest-folder-view.c: (filter_row): Use the tinymail account ID (equivalent to the modest account name) rather than the tinymail account name (equivalent to the modest account title - human readable) to get the account data. Check for null account data to prevent the crash, and add a TODO comment saying that this needs fixing because it is using the server account name instead of the account name. 2007-04-29 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (show_error): * src/maemo/modest-account-settings-dialog.c: (show_error), (show_ok): Use hildon_note_new_information() for informative and error messages, which seems to be expected for Maemo applications (no documentation that I know of says this). I am surprised that there is no distinction between info and error dialogs. 2007-04-29 Murray Cumming * src/maemo/modest-maemo-ui-constants.h: Add a MODEST_MARGIN_NONE constant, so it is easy to find where this is used. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_welcome), (create_page_account_details), (create_page_user_details), (create_page_complete_easysetup), (create_page_custom_incoming), (create_page_custom_outgoing), (create_page_complete_custom): * src/maemo/modest-account-settings-dialog.c: (create_page_account_details), (create_page_user_details), (create_page_incoming), (create_page_outgoing): * src/maemo/modest-account-view-window.c: (window_vbox_new): * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_init): * src/maemo/modest-signature-editor-dialog.c: (modest_signature_editor_dialog_init): Use the correct padding/spacing/borders and scrolling policy as per the Email Application Layout Guide, if I have understood it. 2007-04-27 Murray Cumming * src/modest-tny-account-store.c: (modest_tny_account_store_init): Remove the add_transport_account_func and add_store_account_func vfunc implementations, which were empty, because these vfuncs have been removed from TnyAccountStore. This fixes the build. 2007-04-27 Murray Cumming * src/maemo/modest-main-window.c: (modest_main_window_show_toolbar): Check that a toolbar item is not NULL before showing/hiding it. Added TODO because it probably should not be NULL. * src/modest-init.c: (modest_init_init_ui): Use a g_message() instead of a g_warning() because unnecessary g_warnings() make degugging difficult. 2007-04-27 Murray Cumming * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_select_color), (modest_msg_edit_window_select_background_color): 2 const corrections and moving 2 #endifs before closing brackets, to fix the build. 2007-04-27 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.h: * src/maemo/easysetup/modest-easysetup-wizard.c: (modest_easysetup_wizard_dialog_finalize), (on_button_edit_advanced_settings), (create_page_complete_custom), (on_response), (create_account): Implement the Advanced Settings edit button, by saving the account information, for the Advanded Settings dialog to use directly from gconf, and removing it if Finish is never clicked. There is still some UI strangeness, so this is not finished. Bug #5533 in the projects.maemo.org bugzilla. 2007-04-27 Murray Cumming * src/maemo/modest-msg-view-window.c: (modest_msg_view_window_show_toolbar): Prevent hide/show of a NULL toolbar widget, when opening a message window. 2007-04-27 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_custom_outgoing): Correct the position of the horizontal separator to match the UI spec. * src/maemo/modest-main-window.c: (set_toolbar_mode): Check that widgets are not NULL before showing/hiding them, to avoid a crash when clicking on folders when there are no gconf settings. I probably added more checks than necessary, but that is safer. * src/modest-ui-actions.c: (modest_ui_actions_on_move_to): Initialize the mail_op variable to fix the build, but this seems to be used when it is still NULL. 2007-04-27 Murray Cumming * src/modest-platform.h: * src/gnome/modest-platform.c: (modest_platform_connect_and_wait): * src/maemo/modest-platform.c: (modest_platform_connect_and_wait): * src/modest-main.c: Implement this function so we can avoid using maemo-specific API from cross-platform code. (main): * src/modest-tny-account-store.c: (get_smtp_specific_transport_account_for_open_connection): * src/modest-ui-actions.c: (check_for_connection), (modest_ui_actions_on_item_not_found): Use modest_platform_connect_and_wait() and put #idefs around other maemo-specific code, because only maemo currently has a way to identify connection names. 2007-04-27 Murray Cumming * src/modest-tny-account-store.h: * src/modest-tny-account-store.c: Added modest_tny_account_store_get_transport_account_for_open_connection(), which respects the connection-specific SMTP server settings in the configuration. * src/dbus_api/modest-dbus-callbacks.c: (on_idle_send_mail), (on_idle_mail_to): * src/maemo/modest-main-window.c: (on_connection_changed), (connect_signals): * src/modest-main.c: (main), (start_ui), (send_mail): Use tny_maemo_conic_device_connect() instead of tny_maemo_conic_force_online(), when that is what is intended. * src/modest-ui-actions.c: (action_send), (action_receive), (modest_ui_actions_on_item_not_found), (modest_ui_actions_on_send): Use modest_tny_account_store_get_transport_account_for_open_connection() instead of modest_tny_account_store_get_tny_account_by_account() so that the connection-specific SMTP server is used when it is specified. (modest_ui_actions_on_send_receive): Check that a connection is open before proceeding. Receive and then send, instead of vice-versa, as per the specification. 2007-04-26 Murray Cumming * src/modest-mail-operation.c: (modest_mail_operation_remove_folder): Intialize the parent variable, to fix the build, though I guess it should be something other than NULL. 2007-04-26 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_custom_incoming): Add the checkbox to the caption instead of adding the combo twice, to avoid an g_warning and to make it visible again. * src/maemo/modest-main-window.c: (on_account_update): Check whether the popup_menu is attached before detaching it, to avoid a g_warning, and add comment about the implicit (already intended) dereference when detaching, because we then recreate the menu. But I am not sure why the warning was happening, and it is possible that this is a memory leak. 2007-04-25 Murray Cumming * src/dbus_api/modest-dbus-callbacks.c: Added uri_unescape(), and uri_parse_mailto() utility functions. (on_idle_mail_to): Parse, unescape, and use the subject, cc, bcc, and body items in the mailto URI. * tests/dbus_api/test_mail_to.c: (main): Add escaped spaces in the URI to test this. 2007-04-24 Murray Cumming * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.c: Use an idle callback to execute the modest code in the application's own thread. Remove the helloworld example method. Handle mail-to and open-message D-Bus methods, though the mail-to format needs to be parsed, and the open-message method is not implemented because this is not yet implemented in modest itself. * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_send_mail), (libmodest_dbus_client_mail_to), (libmodest_dbus_client_open_message): * libmodest-dbus-client/libmodest-dbus-client.h: New functions for the new methods. * src/modest-tny-msg.c: (modest_tny_msg_new), (add_body_part): Handle NULLs for subject and body without crashing. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_mail_to.c: * tests/dbus_api/test_open_message.c: New tests for the new methods. 2007-04-24 Murray Cumming * libmodest-dbus-client/libmodest-dbus-client-1.0.pc.in: Added file to fix the build. Sorry. * src/dbus_api/Makefile.am: * src/dbus_api/modest-dbus-api.h: * src/dbus_api/modest-dbus-callbacks.h: * src/dbus_api/modest-dbus-callbacks.c: (on_send_mail), (modest_dbus_req_handler): Put constants in a separate header so it can be reused by the client library, without duplication * libmodest-dbus-client/Makefile.am: * libmodest-dbus-client/libmodest-dbus-client.c: (libmodest_dbus_client_call_helloworld), (libmodfest_dbus_client_send_mail), (libmodfest_dbus_client_mailto), (libmodfest_dbus_client_open_message): * libmodest-dbus-client/libmodest-dbus-client.h: (Partly) Implement a send_mail D-Bus method. * tests/dbus_api/Makefile.am: * tests/dbus_api/test_send_mail.c: (main): Added a test for the send_email D-Bus method. 2007-04-24 Murray Cumming * Makefile.am: * configure.ac: * libmodest-dbus-client/Makefile.am: * libmodest-dbus-client/libmodest-dbus-client.c: * libmodest-dbus-client/libmodest-dbus-client.h: * tests/dbus_api/Makefile.am: * tests/dbus_api/test_hello.c: (main): Added directory structure for a C convenience library for using the modest D-Bus API, and used that from the test. It is still just a helloworld. 2007-04-24 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_account_details): * src/maemo/modest-account-settings-dialog.c: (create_page_account_details): Explicitly set auto-capitalization mode for the title widgets, because this might not be the default in future versions of the Maemo GTK+. However, I can not not get capitalization to work even in a simple test case. 2007-04-24 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_custom_incoming), (create_page_custom_outgoing): * src/maemo/modest-account-settings-dialog.c: (create_page_account_details), (create_page_incoming), (create_page_outgoing): Use a separate label in a caption for GtkCheckButtons, instead of using gtk_check_button_with_label(), so they are aligned like the other widgets, as per the UI spec. 2007-04-24 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/modest-connection-specific-smtp-edit-window.c: * src/widgets/modest-validating-entry.c: * src/widgets/modest-validating-entry.h: Rename the validating widget so it has a Modest prefix instead of an EasySetup prefix. 2007-04-23 Murray Cumming * src/widgets/modest-validating-entry.h: * src/widgets/modest-validating-entry.c: (on_insert_text), Added easysetup_validating_entry_set_max_func(), used to set a callback to call when the max number of characters is reached. GtkEntry has a max-length already but is silent about it. * src/maemo/easysetup/modest-easysetup-wizard.c: (on_entry_max), (create_page_account_details), (create_page_user_details), (create_account): * src/maemo/modest-account-settings-dialog.c: (on_entry_max), (create_page_account_details), (create_page_user_details), (create_page_outgoing): * src/modest-ui-actions.c: (modest_ui_actions_on_details): Use easysetup_validating_entry_set_max_func() to show the warning dialog, as per the UI spec, when the user tries to enter more than the max number of characters. 2007-04-23 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_user_details), (create_page_custom_incoming), (create_page_custom_outgoing): * src/maemo/modest-account-settings-dialog.c: (create_page_user_details), (create_page_incoming), (create_page_outgoing): * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): Use hildon_gtk_entry_set_input_mode() to turn off auto-capitalization where it is not appropriate. Bad Maemo-specific defaults!. 2007-04-23 Murray Cumming * src/maemo/modest-signature-editor-dialog.c: (enable_widgets), (on_toggle_button_changed), (modest_signature_editor_dialog_init), (modest_signature_editor_dialog_set_settings): Disable the label and textview when the checkbox is disabled, and use the specified (UI spec) default signature text. 2007-04-23 Murray Cumming * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): Use spacing constants. * src/modest-defs.h: * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Added modest_account_mgr_get/set_signature(), using new gconf keys. * src/maemo/Makefile.am: * src/maemo/modest-signature-editor-dialog.c: * src/maemo/modest-signature-editor-dialog.h: New dialog for editing signatures, as per the UI spec. * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_finalize), (on_button_signature), (save_configuration): Use the new dialog when the Edit button is pressed, and save the changes if necessary, as per the UI spec. 2007-04-23 Murray Cumming * src/maemo/Makefile.am: * src/maemo/modest-maemo-ui-constants.h: New header with some defines for widget spacing, based on maemo-develoers email from Dirk. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_welcome), (create_page_account_details), (create_page_user_details), (create_page_complete_easysetup), (create_page_custom_incoming), (create_page_custom_outgoing), (create_page_complete_custom), (modest_easysetup_wizard_dialog_init): * src/maemo/modest-account-settings-dialog.c: (create_page_account_details), (create_page_user_details), (create_page_incoming), (create_page_outgoing), (modest_account_settings_dialog_init): * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_init): Used the smallest of the spacing constants. 2007-04-23 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_account_details), (create_page_custom_outgoing), (create_page_complete_custom): * src/maemo/modest-account-settings-dialog.c: (create_page_user_details), (create_page_incoming), (create_page_outgoing): * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_init): Use the correct (UI spec) port min/max, and use horizontal separators, as per the UI spec. 2007-04-23 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (set_default_custom_servernames): * src/maemo/modest-account-settings-dialog.c: (create_page_incoming), (on_combo_outgoing_security_changed), (on_combo_incoming_security_changed), (create_page_outgoing), (modest_account_settings_dialog_set_account_name), (save_configuration): * src/maemo/modest-connection-specific-smtp-edit-window.c: (on_combo_security_changed), (modest_connection_specific_smtp_edit_window_init), (modest_connection_specific_smtp_edit_window_set_connection), (modest_connection_specific_smtp_edit_window_get_settings): Use HildonNumberEditor instead of GtkEntry for the port numbers so it has the - and + buttons, as per the UI spec. 2007-04-20 Murray Cumming * po/en_GB.po: * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_custom_outgoing), (create_page_complete_custom): * src/maemo/modest-account-settings-dialog.c: (create_page_user_details), (create_page_outgoing): * src/maemo/modest-account-view-window.c: (button_box_new): Use changed logical IDs as per the most recent UI spec: mcen_bd_emailsetup_edit -> mcen_bd_edit mcen_bd_emailsetup_delete -> mcen_bd_delete mcen_bd_emailsetup_close -> mcen_bd_close 2007-04-20 2007-04-20 Murray Cumming * configure.ac: * src/Makefile.am: * src/dbus_api/Makefile.am: * src/dbus_api/modest-dbus-callbacks.c: * src/dbus_api/modest-dbus-callbacks.h: * src/maemo/modest-platform.c: (modest_platform_init): Added the beginnings of a D-Bus API. At the moment it just has a HelloWorld method. * tests/Makefile.am: * tests/dbus_api/Makefile.am: * tests/dbus_api/test_hello.c: (main): Very simple test of the D-Bus API. 2007-04-20 Murray Cumming * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-connection-specific-smtp-edit-window.c: Removed unnecessary includes. 2007-04-20 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-connection-specific-smtp-edit-window.c: * src/widgets/Makefile.am: * src/widgets/modest-easysetup-secureauth-combo-box.c: * src/widgets/modest-easysetup-secureauth-combo-box.h: * src/widgets/modest-easysetup-serversecurity-combo-box.c: * src/widgets/modest-easysetup-serversecurity-combo-box.h: * src/widgets/modest-secureauth-combo-box.c: * src/widgets/modest-secureauth-combo-box.h: * src/widgets/modest-serversecurity-combo-box.c: * src/widgets/modest-serversecurity-combo-box.h: Renamed the files and made the GObject names more consistent with the rest of the Modest code. 2007-04-20 Murray Cumming * src/maemo/easysetup/Makefile.am: * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c: * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.h: * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c: * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h: * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/easysetup/modest-validating-entry.c: * src/maemo/easysetup/modest-validating-entry.h: * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-connection-specific-smtp-edit-window.c: * src/widgets/Makefile.am: Moved these widgets from maemo/easysetup into widgets/ because they are used outside of easysetup too. After checking in, svn will allow me to rename them too. 2007-04-20 Murray Cumming * src/gnome/modest-msg-edit-window.c: (modest_msg_edit_window_set_priority_flags): Added an empty implementation to fix a linker error, to fix the build on the GNOME platform. modest_msg_edit_window_set_zoom(), modest_msg_edit_window_get_zoom(), modest_msg_edit_window_zoom_plus(), modest_msg_edit_window_zoom_minus(): ifdefed out to avoid a warning. 2007-04-20 Murray Cumming * src/widgets/modest-header-view.c: (on_focus_in): Use GTK_CHECK_VERSION to #ifdef around the use of gtk_tree_view_get_visible_range(), to fix the build on Mameo. This code probably needs some alternative for GTK+ 2.6. 2007-04-19 Murray Cumming * src/maemo/modest-address-book.c: Added include to avoid a warning. * po/en_GB.po: Added missing mcen_bd_emailsetup_close string, specified for EmailAccountsDialog in UI spec. * src/maemo/easysetup/modest-easysetup-wizard.c: * src/maemo/easysetup/modest-easysetup-wizard.h: * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-account-settings-dialog.h: Reuse a member window widget for the connection-specific SMTP server accounts, so we can tell it to create/save the accounts only if we actually save changes. * src/maemo/modest-connection-specific-smtp-edit-window.h: * src/maemo/modest-connection-specific-smtp-edit-window.c: (modest_connection_specific_smtp_edit_window_get_settings): Return a struct instance for temporarily remembering the entered data. * src/maemo/modest-connection-specific-smtp-window.h: * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_finalize), (modest_connection_specific_smtp_window_fill_with_connections), (on_button_edit), (modest_connection_specific_smtp_window_save_server_accounts), (update_model_server_names): Do not actually save data until asked, when the caller calls modest_connection_specific_smtp_window_save_server_accounts(). (on_selection_changed), (modest_connection_specific_smtp_window_init): Disable the edit button when nothing is selected. * src/modest-account-mgr-helpers.c: * src/modest-account-mgr-helpers.h: Put modest_account_mgr_free_server_account_data() in the header now that I use the struct elsewhere. 2007-04-19 Murray Cumming * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: (modest_account_mgr_get_unused_account_name), (modest_account_mgr_get_unused_account_display_name): Added these utility functions, to avoid code duplication. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_account_details), (create_account): * src/maemo/modest-connection-specific-smtp-edit-window.c: (on_combo_security_changed), (modest_connection_specific_smtp_edit_window_init), (modest_connection_specific_smtp_edit_window_save_settings): * src/maemo/modest-connection-specific-smtp-edit-window.h: * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_finalize), (modest_connection_specific_smtp_window_fill_with_connections), (on_button_edit), (modest_connection_specific_smtp_window_init): * src/maemo/modest-connection-specific-smtp-window.h: Implementing saving of connection-specific server accounts. But I need to refactor this so we can save the data for each possible connection-specific account and only actually create the server accounts when the easysetup finished, or the OK button is pressed on the account settings dialog. 2007-04-18 Murray Cumming * src/maemo/modest-connection-specific-smtp-edit-window.c: (on_combo_security_changed): (modest_connection_specific_smtp_edit_window_init): Auto-fill the port number as in the account settings. (modest_connection_specific_smtp_edit_window_set_connection): * src/maemo/modest-connection-specific-smtp-edit-window.h: * src/maemo/modest-connection-specific-smtp-window.c: (fill_with_connections), (on_button_edit), (modest_connection_specific_smtp_window_init): Turn the edit window into a dialog to simplify the code, and set a WM hint as in a GtkDialog, because only a popup can be on top of another window in Maemo, and popups usually have no WM decoration. * src/modest-defs.h: * src/modest-account-mgr-helpers.c: (modest_account_mgr_set_connection_specific_smtp), (modest_account_mgr_remove_connection_specific_smtp), (modest_account_mgr_get_connection_specific_smtp): * src/modest-account-mgr-helpers.h: Some functions to write the connection-specific SMTP server information. Not yet used. * src/widgets/modest-folder-view.c: (text_cell_data): Fix a warning about an uninitialized variable. (on_configuration_key_changed): Put an #ifdef around the use of gtk_tree_view_column_queue_resize() because it is new in GTK+ 2.10. 2007-04-18 Murray Cumming * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: Added connect_for_modified() utility function to mark the new modified boolean. (create_page_account_details), (create_page_user_details), (create_page_incoming), (create_page_outgoing), (on_response), (modest_account_settings_dialog_init), (modest_account_settings_dialog_set_account_name): Only warn about unsaved changes when there are actually unsaved changes. * src/modest-account-mgr-helpers.c: * src/modest-account-mgr-helpers.h: Put the port, secure-auth, and security information into the ModestServerAccountData struct. I do not use it yet, but someone might expect to get the data from there in future. 2007-04-18 Murray Cumming * src/modest-defs.h: * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: Store the security account setting in a single conf key instead of using the options list, so that the list is left for just the to-be-removed camel hack, and because gconf_client_set_list() is failing for some reason. * src/modest-account-mgr.c: (modest_account_mgr_add_server_account): * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_set_account_name), (save_configuration): Use the renamed functions. 2007-04-18 Murray Cumming * src/widgets/Makefile.am: * src/widgets/modest-limit-retrieve-combo-box.c: * src/widgets/modest-limit-retrieve-combo-box.h: * src/widgets/modest-retrieve-combo-box.c: * src/widgets/modest-retrieve-combo-box.h: Added new widgets for use in the account settings dialog. * src/modest-defs.h: * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: (modest_server_account_get_option_secure_auth), (modest_server_account_set_option_secure_auth): * src/modest-account-mgr.c: (modest_account_mgr_add_server_account): Use the existing AUTH_MECH conf key for the secure-auth setting, instead of putting it in the list options, because this was actually used already. * src/maemo/modest-account-settings-dialog.c: (create_page_account_details), (modest_account_settings_dialog_set_account_name), (save_configuration): * src/maemo/modest-account-settings-dialog.h: Add the retrieve and retrieve-limit combo boxes, as per the UI spec. Hide the leave-messages checkbox for non-POP accounts, as per the UI spec. 2007-04-18 Murray Cumming * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.h: * src/maemo/easysetup/modest-easysetup-serversecurity-combo-box.c: Added easysetup_serversecurity_combo_box_get_active_serversecurity_port() * src/modest-defs.h: * src/maemo/modest-account-settings-dialog.c: (create_page_incoming), (on_combo_outgoing_security_changed), (on_combo_incoming_security_changed), (create_page_outgoing), (modest_account_settings_dialog_set_account_name), (save_configuration): Load/Save the port number, and change it when the security combo changes, to suitable defaults. 2007-04-17 Murray Cumming * src/modest-account-mgr.c: (modest_account_mgr_add_server_account): Set the security and secure-auth options, and add a comment saying that the other camel-specific options should be removed in future. 2007-04-17 Murray Cumming * src/maemo/modest-account-settings-dialog.c: (check_data): Always return something, found by valgrind. * src/modest-tny-account-store.c: (account_list_free), (on_account_changed): Add a TODO comment about a valgrind error, caused by using cursor->data after unreffing it. But there is some strange stuff there so it might not be easy to fix. 2007-04-17 Murray Cumming * src/modest-protocol-info.c: * src/modest-protocol-info.h: Added a MODEST_PROTOCOL_AUTH_CRAMMD5 enum value, because it is required by our UI spec. Maybe something in our implementation will use this eventually. * src/maemo/easysetup/modest-easysetup-secureauth-combo-box.c: (easysetup_secureauth_combo_box_fill): Use the CRAM MD5 enum value instead of the previous 0 placeholder. * src/modest-defs.h: Added gconf list pair key names and value strings for the security and secure-auth settings. * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: (modest_server_account_data_get_option_secure_auth), (modest_server_account_set_option_secure_auth), (modest_server_account_data_get_option_security), (modest_server_account_set_option_security): Added this API for getting and setting the security and secure-auth settings. * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_finalize), (check_data), (on_response): Store the original title as well as the name, to avoid unnececessary warnings about changing titles. (modest_account_settings_dialog_set_account_name): Load the security and secure-auth settings. (save_configuration): Save the security and secure-auth settings. * src/modest-conf.c: (modest_conf_set_list): Get the list after setting it, to show that this is failing sometimes (though reporting success). I fear I may need to debug gconf to fix this. 2007-04-17 Murray Cumming * src/modest-defs.h: * src/modest-account-mgr.c: (modest_account_mgr_add_server_account): Added and used defines for the options key and value pair strings, that are used so far, though they do not seem to correspond to anything in our UI specs or ModestProtocol enum. * src/modest-account-mgr-helpers.h: * src/modest-account-mgr-helpers.c: (compare_option_strings_for_name), (modest_server_account_data_get_option_value), (modest_server_account_data_get_option_bool), (modest_account_mgr_get_server_account_option): Added helper functions for parsing the options GSList. 2007-04-16 Murray Cumming * src/modest-account-mgr-helpers.c: Clarified the documentation to say that the initial display name is based on the supplied account name. * src/modest-account-mgr.c: * src/modest-account-mgr.h: Added modest_account_mgr_account_with_display_name_exists(), with an inefficient, but good-enough, implementation. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_account_details), (on_before_next), (create_account): Check for existing display names rather than (non-user-visible) account names, and just create and set a unique account name at the end. * src/maemo/modest-account-settings-dialog.c: (modest_account_settings_dialog_init), (modest_account_settings_dialog_set_account_name), (create_page_incoming): Show the display name, instead of the account name. (on_response): Do some (not all) extra checks, as in the UI spec. (save_configuration): Save the display name if it was changed. 2007-04-16 Murray Cumming * po/en_GB.po: Added needed logical ID and translation. * src/widgets/modest-account-view.c: (on_account_default_toggled), (init_view): Made the is-default column clicking work. 2007-04-16 Murray Cumming * configure.ac: * src/maemo/easysetup/Makefile.am: * src/maemo/easysetup/modest-easysetup-wizard.c: (modest_easysetup_wizard_dialog_init): * src/maemo/easysetup/provider-data-test.keyfile: * src/maemo/easysetup/provider-data.keyfile: Moved the provider data file to the new modest-providers-data package and used it from there. 2007-04-16 Murray Cumming * src/modest-local-folder-info.c: (modest_local_folder_info_get_type_display_name): Use _() to actually get the translated string. N_() was already used on the static strings, but this just marks it for translation without using the translation. 2007-04-06 Murray Cumming * src/maemo/modest-account-settings-dialog.c: (create_page_incoming), (modest_account_settings_dialog_set_account_name): Added comments about the need for new API in ModestAccountMgr to handle the authentication and secure-connection stuff that is stored in the options GSList* with hard-coded names. I will do this if nobody else gets there first. 2007-04-06 Murray Cumming * src/maemo/modest-account-settings-dialog.c: (save_configuration): Saved much of the incoming and outgoing data too, though I cannot yet see how to save the security stuff. 2007-04-06 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Set the email address and user fullname, which I now see must be done separately. * src/maemo/modest-account-settings-dialog.h: * src/maemo/modest-account-settings-dialog.c: (on_response), (modest_account_settings_dialog_set_account_name): Show the email address, fullname, leave-on-server and authentication. (save_configuration): Save most of the non-server-account specific stuff, but I don't see how to do the rest. 2007-04-06 Murray Cumming * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-account-settings-dialog.h: Most (but not all) of the widgets are now present as specified by the UI spec. No changes are yet saved, and some details are not properly shown yet. * po/en_GB.po: Added translations for logical IDs used by the Account Settings dialog. 2007-04-06 Murray Cumming * src/maemo/Makefile.am: * src/maemo/modest-account-settings-dialog.c: * src/maemo/modest-account-settings-dialog.h: The beginnings of the dialog to edit an existing account. Doesn't do much yet. * src/maemo/modest-account-view-window.c: (on_edit_button_clicked): Open the accounts settings dialog when Edit is clicked. 2007-04-05 Murray Cumming * src/maemo/easysetup/Makefile.am: * src/maemo/easysetup/modest-easysetup-country-combo-box.c: (load_from_file): * src/maemo/easysetup/modest-easysetup-wizard.c: (modest_easysetup_wizard_dialog_init): Try to get the source directory from the build system, instead of hard-coding "./" into the source code, when opening our local copies of the configuration files. But this still fails when opening the wizard from the Accounts window, maybe because the working directory seems to change at runtime. So the wizard will fail the second time unless you copy the files into their proper locations - see the stdout warnings for the paths. (create_page_account_details),(on_before_next): Check for existing non-server accounts instead of server accounts, so the default account name is useful again, and to prevent trying to recreate accounts. * src/maemo/modest-account-view-window.c: (on_new_button_clicked): Show the wizard when New is clicked. * src/widgets/modest-account-view.c: (on_account_default_toggled), (init_view): Show the column headers, and show the columns that are specified in the UI specs. However, something in Maemo's GTK+ prevents us from handling the GtkCellRendererToggle::toggled signal, so we cannot change the default account. This is despite unsetting the special properties. 2007-04-05 Murray Cumming * docs/reference/modest-design.sgml: Corrected spelling mistake. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): Create the 2 server accounts and then create the account, using the names of the 2 server accounts. This seems to be how this should be used. If it is, then I will update the AccountMgr documentation to make that clearer. * src/modest-account-mgr.h: Corrected the modest_account_mgr_search_server_account() documentation. 2007-04-05 Murray Cumming * src/maemo/modest-account-view-window.c: (modest_account_view_window_init), (modest_account_view_window_new): Use the same buttons as specified in the UI spec. Add the widgets to the vbox and action_area instead of just assigning them to the existing widgets, which never had a chance of working. Put the ModestAccountView treeview in a scrolled window. Do not repeat the initialization in both _init() and _new(). * src/widgets/modest-account-view.c: (update_account_view): Add a warning about modest_account_mgr_account_names() returning NULL, which is why this widget and window shows no accounts. * po/en_GB.po: Added translations needed for the dialog button logical IDs. 2007-04-05 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (set_default_custom_servernames): Avoid a dereference of a destroyed widget. (create_account): Do a sanity check, showing that modest_account_mgr_account_names() returns NULL after modest_account_mgr_add_server_account() returned TRUE, which seems wrong. * src/maemo/modest-main-window-ui.h: Specify the callback for the Accounts menu item. * src/modest-ui-actions.c: (modest_ui_actions_on_accounts): Open the wizard if no accounts exist yet, as in the UI spec. * src/modest-account-mgr.h: Add TODO comment about a possible memory leak. 2007-04-05 Murray Cumming * src/maemo/Makefile.am: * src/maemo/modest-connection-specific-smtp-edit-window.c: * src/maemo/modest-connection-specific-smtp-edit-window.h: New window for editing connection-specific smtp details. Not fully implemented. * src/maemo/modest-connection-specific-smtp-window.c: (modest_connection_specific_smtp_window_finalize) : unref the tree model. (on_button_edit): Show the edit window. 2007-04-05 Murray Cumming * src/Makefile.am: Change sequence of sub-libraries, which fixed an undefined symbol error for me. * src/maemo/Makefile.am: * src/maemo/modest-connection-specific-smtp-window.c: * src/maemo/modest-connection-specific-smtp-window.h: New window for showing the list of connections, for connection-specific SMTP servers. Not fully implemented, because it needs an enhancement to TnyMaemoDevice. * src/maemo/easysetup/modest-easysetup-wizard.c: (create_page_custom_outgoing): Show the new window when the button is clicked. 2007-04-04 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: (create_account): * src/maemo/easysetup/modest-presets.c: (modest_presets_new): * src/maemo/modest-msg-edit-window.c: (modest_msg_edit_window_insert_image): * src/modest-conf.c: (modest_conf_key_escape): * src/modest-mail-operation.c: (modest_mail_operation_send_new_mail): * src/modest-ui-actions.c: (modest_ui_actions_on_accounts), (modest_ui_actions_on_new_account): * src/widgets/modest-attachment-view.c: (update_filename_request): * src/widgets/modest-mail-header-view.c: Corrected warnings that were breaking the build, by commenting out unused variables, and a function, and by including a header. 2007-04-04 Murray Cumming * configure.ac: Define MODEST_PLATFORM_MAEMO and MODEST_PLATFORM_GNOME in config.h, so we can #ifdef around platform-specific code when necessary. * src/modest-ui-actions.c: (modest_ui_actions_on_new_account): Use MODEST_PLATFORM_MAEMO to allow this to build for the GNOME platform too. 2007-04-04 Murray Cumming * src/maemo/easysetup/modest-easysetup-wizard.c: Added util_increment_name() and used it in create_page_account_details() to make sure that the default account name is always a new name. (modest_easysetup_wizard_dialog_init), (set_default_custom_servernames): Some minor memory management fixes. 2007-04-04 Murray Cumming * Makefile.am: * configure.ac: * src/modest-runtime.c: (init_i18n): Restored the translation infrastructure, so that GETTEXT_PACKAGE and MODEST_LOCALE_DIR are defined in config.h, and the translations are installed. * src/maemo/easysetup/: Include config.h so that GETTEXT_PACKAGE is defined for translation. 2007-04-03 Murray Cumming * src/maemo/easysetup/modest-easysetup-country-combo-box.c: (load_from_file): * src/maemo/easysetup/modest-easysetup-wizard.c: (modest_easysetup_wizard_dialog_init): * src/maemo/easysetup/modest-presets.c: (modest_presets_new): Use realistic paths (though they should use $prefix generically) to the mcc_mapping and provider-data.keyfile files which might work when they are installed by the future version of the operator-wizard package, and then fallback to paths in our source code, with an explanatory warning. 2007-04-03 Murray Cumming * configure.ac: * src/Makefile.am: * src/maemo/Makefile.am: * src/maemo/easysetup/: Added files from the previously-exernal osso-modest-easysetup. * src/maemo/modest-main-window-ui.h: * src/modest-ui-actions.c: * src/modest-ui-actions.h: Added modest_ui_actions_on_new_account() as a signal handler for the New Account menu item. It shows the easysetup wizard. * po/en_GB.po: Added additional needed logical IDs and translations.