From 63eedb5569e6bbed4df2e871d7397bb6a974aa43 Mon Sep 17 00:00:00 2001 From: Sergio Villar Senin Date: Wed, 15 Apr 2009 11:42:30 +0000 Subject: [PATCH] Fixes NB#110998, do not ask for saving changes when there is no modification of account data Fixes the parsing of outgoing port numbers for preset providers pmo-trunk-r8813 --- .../modest-default-account-settings-dialog.c | 4 +-- src/hildon2/modest-easysetup-wizard-dialog.c | 30 ++++++++++++-------- src/widgets/modest-security-options-view.c | 8 ++++-- 3 files changed, 25 insertions(+), 17 deletions(-) diff --git a/src/hildon2/modest-default-account-settings-dialog.c b/src/hildon2/modest-default-account-settings-dialog.c index f0c19a3..8a61537 100644 --- a/src/hildon2/modest-default-account-settings-dialog.c +++ b/src/hildon2/modest-default-account-settings-dialog.c @@ -1153,9 +1153,6 @@ modest_default_account_settings_dialog_load_settings (ModestAccountSettingsDialo priv = MODEST_DEFAULT_ACCOUNT_SETTINGS_DIALOG_GET_PRIVATE (dialog); protocol_registry = modest_runtime_get_protocol_registry (); - incoming_account = modest_account_settings_get_store_settings (settings); - outgoing_account = modest_account_settings_get_transport_settings (settings); - account_name = modest_account_settings_get_account_name (settings); /* Save the account name so we can refer to it later: */ @@ -1194,6 +1191,7 @@ modest_default_account_settings_dialog_load_settings (ModestAccountSettingsDialo hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->checkbox_leave_messages), modest_account_settings_get_leave_messages_on_server (settings)); + incoming_account = modest_account_settings_get_store_settings (settings); if (incoming_account) { const gchar *username, *password, *hostname, *proto_str, *account_title; gchar *proto_name, *title; diff --git a/src/hildon2/modest-easysetup-wizard-dialog.c b/src/hildon2/modest-easysetup-wizard-dialog.c index 5db6e4c..68ec558 100644 --- a/src/hildon2/modest-easysetup-wizard-dialog.c +++ b/src/hildon2/modest-easysetup-wizard-dialog.c @@ -2172,6 +2172,7 @@ save_to_settings (ModestEasysetupWizardDialog *self) if (provider_id) { ModestProtocolType transport_provider_server_type; ModestProtocolType transport_provider_security; + gboolean is_secure; /* Use presets */ transport_hostname = modest_presets_get_server (priv->presets, provider_id, @@ -2187,21 +2188,26 @@ save_to_settings (ModestEasysetupWizardDialog *self) /* Note: We need something as default, or modest_account_mgr_add_server_account will fail. */ transport_protocol = transport_provider_server_type; transport_security = transport_provider_security; - if (transport_security == MODEST_PROTOCOLS_CONNECTION_SSL) { - /* printf("DEBUG: %s: using secure SMTP\n", __FUNCTION__); */ - /* we check if there is a *special* port */ - special_port = modest_presets_get_port (priv->presets, provider_id, - FALSE /* transport */); - if (special_port != 0) - transport_port = special_port; - else - transport_port = 465; - transport_auth_protocol = MODEST_PROTOCOLS_AUTH_PASSWORD; + is_secure = modest_protocol_registry_protocol_type_is_secure (modest_runtime_get_protocol_registry (), + transport_security); + + /* we check if there is a *special* port */ + special_port = modest_presets_get_port (priv->presets, provider_id, + FALSE /* transport */); + if (special_port != 0) { + transport_port = special_port; } else { - /* printf("DEBUG: %s: using non-secure SMTP\n", __FUNCTION__); */ - transport_auth_protocol = MODEST_PROTOCOLS_AUTH_NONE; + gboolean use_alternate_port = FALSE; + if (transport_security == MODEST_PROTOCOLS_CONNECTION_SSL) + use_alternate_port = TRUE; + transport_port = get_port_from_protocol(transport_provider_server_type, use_alternate_port); } + if (is_secure) + transport_auth_protocol = MODEST_PROTOCOLS_AUTH_PASSWORD; + else + transport_auth_protocol = MODEST_PROTOCOLS_AUTH_NONE; + modest_server_account_settings_set_security_protocol (transport_settings, transport_security); modest_server_account_settings_set_auth_protocol (transport_settings, diff --git a/src/widgets/modest-security-options-view.c b/src/widgets/modest-security-options-view.c index 2e87c10..9f88f09 100644 --- a/src/widgets/modest-security-options-view.c +++ b/src/widgets/modest-security-options-view.c @@ -234,11 +234,15 @@ get_current_state (ModestSecurityOptionsView* self, /* Get security */ #ifdef MODEST_TOOLKIT_HILDON2 - state->security = + state->security = modest_serversecurity_picker_get_active_serversecurity (MODEST_SERVERSECURITY_PICKER (priv->security_view)); + state->port = + modest_serversecurity_picker_get_active_serversecurity_port (MODEST_SERVERSECURITY_PICKER (priv->security_view)); #else - state->security = + state->security = modest_serversecurity_combo_box_get_active_serversecurity (MODEST_SERVERSECURITY_COMBO_BOX (priv->security_view)); + state->port = + modest_serversecurity_combo_box_get_active_serversecurity_port (MODEST_SERVERSECURITY_COMBO_BOX (priv->security_view)); #endif /* Get auth */ -- 1.7.9.5