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. Started ChangeLog2 file, because I cannot work without a ChangeLog. murrayc. Apparently ChangeLog is not used for some vague Nokia legal reasons.