Only remove mail notifications for each account, when we see mails or folders from that account (fixes NB#140276).
Properly show and store from's from mailboxes in editor pmo-trunk-r8570
Fix some unit tests. pmo-trunk-r7369
Hide singleton providers from wizard providers list if already set up pmo-trunk-r7278
Merged the new plugin system from branch plugin-system. pmo-trunk-r5674
Fix for NB#88031: * src/modest-account-mgr.[ch]: added method to check if there's already an store account with the same login, hostname and port as the one we're trying to add to account manager. * src/maemo/easysetup/modest-easysetup-wizard-dialog.c: now we check also on trying to save the account if there's already an account with the same setup data. We prevent as we don't want two modest accounts using the same cache. pmo-trunk-r5606
This patch includes a lot of work to refactor and reorganize the account settings dialogs. The main improvement is the implementation of ModestAccountSettings and ModestServerAccountSettings. These classes represent the settings of accounts and server accounts in memory, avoiding storage in ModestConf for temporal or non persistent account settings. * src/modest-protocol-info.[ch]: * New method modest_protocol_info_get_connection_protocol, that obtains a ModestConnectionProtocol from a string. * src/modest-server-account-settings.[ch]: * New class, that represents server settings (common for store and transport server settings. It's only a memory storage. Persistence is managed in ModestAccountMgr. * src/modest-account-settings.[ch]: * New class, that represents an account. It contains two ModestServerStoreSettings for store and transport accounts associated with the account. It represents all the common account information (display name, user fullname, email address, etc). * src/modest-account-mgr-helpers.[ch]: * Added internal method null_means_empty for avoiding setting NULL to values we shouldn't put NULL. * (modest_account_mgr_get_store_protocol): use the new settings api. * (get_secure_auth_for_conf_string): removed, as it's also in ModestProtocolInfo. Also use modest_protocol_info_get_auth_protocol_name instead of the big if. * (get_security_for_conf_string): removed, as it's also in ModestProtocolInfo. Also removed if. * Replaced modest_account_mgr_get_server_account_data with modest_account_mgr_load_server_settings. The method creates an instance of ModestServerAccountSettings from a ModestConf account. * Removed free method for server account data. * Added method modest_account_mgr_save_server_settings. It stores a ModestServerAccountSettings in ModestConf. * Replaced modest_account_mgr_get_account_data with modest_account_mgr_load_account_settings. This fills a ModestAccountSettings instance with information, and also obtains the store and transport server settings. Also removed old ModestAccountData and ModestServerAccountData structs. * New method modest_account_mgr_save_account_settings, that saves an account to ModestConf. It's more intended for updating an existing accoung. * Methods get_retrieve_type_name and get_retrieve_type, to convert from string representation of retrieve types into modest ModestAccountRetrieveType and viceversa. * src/modest-account-mgr.[ch]: * New (modest_account_mgr_add_account_from_settings): creates a new account in ModestConf, and emits the signal to register it in the list of available accounts. * Usage of ModestAccountRetrieveType instead of conf strings. * Use ModestAccountSettings and ModestServerAccountSettings instead of deprecated ModestAccountData and ModestServerAccountData. * src/modest-tny-account.c: * Use ModestAccountSettings and ModestServerAccountSettings. * src/modest-tny-account-store.c: * Use ModestAccountSettings. * src/modest-mail-operation.c: * Use ModestAccountRetrieveType instead of strings. * src/modest-widget-memory.c: * Use ModestAccountSettings. * src/widgets/modest-retrieve-combo-box.[ch]: * Use ModestAccountRetrieveType instead of strings. * src/widgets/modest-account-view.c: * Use ModestServerAccountSettings and ModestAccountSettings. * src/widgets/modest-header-view.c: * Small change, if model is NULL, expose returns silently. * src/modest-ui-actions.c: * Use ModestAccountSettings api. * Make some specific maemo code be now usable again also in gnome port. * src/maemo/modest-connection-specific-smtp-window.c: * User ModestServerAccountSettings api. * src/maemo/easysetup/modest-easysetup-wizard.[ch]: * Big work here to adapt to ModestAccountSettings. As a benefit, now we use it to pass the settings to ModestAccountSettingsDialog (advanced settings). We only save to the account manager on finishing and approving changes. * Moved code to create the account to ModestAccountMgr, and added code to fill the ModestAccountSettings. * src/maemo/easysetup/modest-easysetup-provider-combo-box.c: * New method to set the provider to others. * src/maemo/modest-account-view-window.c: * Use ModestAccountSettings. * src/maemo/modest-account-settings-dialog.c: * Use ModestAccountSettings. * Move storage and fetch code from ModestConf to account manager. * Added code to fill and retrieve information in ModestAccountSettings and ModestServerAccountSettings. * Now it works with ModestAccountSettings, instead of storing directly to ModestConf. * src/maemo/modest-main-window.c: * Use ModestAccountSettings for management of accounts menu options. * src/maemo/modest-connection-specific-smtp-edit-window.c: * Use ModestServerAccountSettings. * src/modes-platform.h, src/maemo/modest-plaform.c, src/gnome/modest-platform.c: * Provide methods to retrieve an instance of the account settings dialog and the account settings wizard. * Provide valid implementation of some dialogs in gnome port. And some work for splitting modest-maemo-utils in modest-utils (for common usable methods) and modest-maemo-utils (specific maemo platform): * src/modest-utils.[ch]: * New set of methods, now available for all modest platforms. * Reworked many other objects, to use this split. * src/maemo/modest-maemo-utils.[ch]: * Moved a lot of methods to modest-utils. pmo-trunk-r3846
Fixes NB#77038 * modest/src/modest-mail-operation.c: the "last_updated" field off an account is updated also when there aren't new headers to get * modest/src/modest-account-mgr.[ch]: added a new signal, "account_updated" * modest/src/widgets/modest-account-view.c: connected to the former signal to refresh the "last updated" column * modest/src/maemo/modest-main-window.c: connected to the former signal to refresh the details widget pmo-trunk-r3833
* Fixes NB#65999 note that the translation is still not available * Fixes the problem present when creating a new account, the account view was showing the account id of the account instead of the display account * Now, every account that is added is automatically refreshed pmo-trunk-r3462
* The "account-changed" signal is now properly managed in the ModestTnyAccountStore and in ModestTnyAccount, there were some errors in the handler that were actually preventing the account update to happen * Changed the signature of the method modest_tny_account_update_from_account * Added display_name_changed signal to notify changes in the display name of the accounts * ModestConf does not listen for key changes, all signal emissions related to changes in the configuration must be triggered by the account manager * Removed the ModestConf delayed notification system, we do not need it since we're not listening for chey changes there anymore * All the modest_account_mgr_(get/set)_(int/book/string/list) are now private methods and could not be used by third parties * Added a lot of getters and setters to the modest-account-mgr-helpers. We did that to ensure that nobody changes the configuration keys directly (because maybe we want to notify key changes) * Renamed old modest_server_account_get_xxx by modest_account_mgr_get_server_account_xxx * Renamed old modest_server_account_set_xxx by modest_account_mgr_set_server_account_xxx * FolderView now changes the display name of an account if it changes * AccountView now changes the display name of an account if it changes * Removed unused code here and there * Several aesthetic changes here and there * TODO: I realized that the account-settings dialog thinks that something has changed when you change it and then revert the change * TODO: detect in the account-settings dialog which changes should issue an "account-changed" signals and which ones not, for example a change in the display name should not force an account reload pmo-trunk-r3433
* Added a new signal to the account mgr that notifies changes in the default account, need some review because we're not getting all the changes from gconf * Fixed a hang when creating the first account, now the accounts are not updated if the status is connecting pmo-trunk-r3376
* add license headers where they were missings, fixes critical bug #64095 pmo-trunk-r3053
* more changes to the account management; now the following should work again: - changing account names (updates modest-account-view, and modest-folder-view) - expand root folders - change modest-account-mgr to only emit change signals once per 500ms - modest-account-mgr changes notification now only give the "parent account", not the server account, and not for every single key - accounts are changed, not recreated pmo-trunk-r2888
* restore some functionality after the changes, by reenabling the key-changed signal in modest-account-mgr, and change it's listeners. Note: updating account name in the Accounts dialog works now; but it's not propagated correctly to the account in the folder view yet. pmo-trunk-r2868
2007-07-31 Philip Van Hoof <pvanhoof@gnome.org> * Merging back devel/sessionwork to trunk/ pmo-trunk-r2866
* ModestAccountMgr: the account manager is just a facade to the configuration system, so it should not know TnyAccounts only ModestAccounts. TnyAccounts are managed by the TnyAccountStore - removed the server_account parametter from the account_removed signal - removed the server_account parametter from the remove_account method - Changed the signature of the methods that handled the signal - completetly rewritten the account removal code * ModestTnyAccountStore - now it issues a account_removed for both the store and the transport account - completety rewritten the get_server_account method, it makes no sense to use the account mgr, because we h ave the accounts * ModestFolderView - added a missing check - added a missing select inbox - added a condition to the filter_row method, do not take into account the visible_account_id if we aren't in SHOW_ONE style pmo-trunk-r2774
2007-07-12 Murray Cumming <murrayc@murrayc.com> * 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. pmo-trunk-r2725
* leak fixes; free both list and its elements when we call modest_account_mgr_account_names * use the new function modest_account_mgr_free_account_names * some other smaller leak fixes pmo-trunk-r2303
2007-06-17 Johannes Schmid <johannes.schmid@openismus.com> * 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 pmo-trunk-r2268
2007-06-11 Johannes Schmid <johannes.schmid@openismus.com> * 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 pmo-trunk-r2165