/* Show the window: */
gtk_window_set_transient_for (GTK_WINDOW (self->specific_window), GTK_WINDOW (self));
+ gtk_window_set_modal (GTK_WINDOW (self->specific_window), TRUE);
gtk_widget_show (self->specific_window);
}
if (priv->dirty) {
GtkDialog *dialog = GTK_DIALOG (hildon_note_new_confirmation (GTK_WINDOW (self),
_("imum_nc_wizard_confirm_lose_changes")));
- /* TODO: These button names will be ambiguous, and not specified in the UI specification. */
+ /* TODO: These button names will be ambiguous, and not
+ * specified in the UI specification. */
const gint dialog_response = gtk_dialog_run (dialog);
self->combo_account_country = NULL;
gint mcc = easysetup_country_combo_box_get_active_country_mcc (
EASYSETUP_COUNTRY_COMBO_BOX (self->combo_account_country));
easysetup_provider_combo_box_fill (
- EASYSETUP_PROVIDER_COMBO_BOX (self->combo_account_serviceprovider), priv->presets, mcc);
+ EASYSETUP_PROVIDER_COMBO_BOX (self->combo_account_serviceprovider),
+ priv->presets, mcc);
}
+ priv->dirty = FALSE;
+
g_object_unref (idle_data->dialog);
g_free (idle_data);
ModestPresets *presets = NULL;
IdleData *idle_data;
- const gchar* filepath = MODEST_PROVIDERS_DATA_PATH; /* Defined in config.h */
- presets = modest_presets_new (filepath);
- if (!(presets)) {
- g_warning ("Could not locate the official provider data keyfile from %s", filepath);
+ const gchar* path = NULL;
+ const gchar* path1 = MODEST_PROVIDER_DATA_FILE;
+ const gchar* path2 = MODEST_MAEMO_PROVIDER_DATA_FILE;
+
+ if (access(path1, R_OK) == 0)
+ path = path1;
+ else if (access(path2, R_OK) == 0)
+ path = path2;
+ else {
+ g_warning ("%s: neither '%s' nor '%s' is a readable provider data file",
+ __FUNCTION__, path1, path2);
+ return NULL;
}
+ presets = modest_presets_new (path);
+ if (!presets) {
+ g_warning ("%s: failed to parse '%s'", __FUNCTION__, path);
+ return NULL;
+ }
+
idle_data = g_new0 (IdleData, 1);
idle_data->dialog = self;
idle_data->presets = presets;
-
- g_idle_add (presets_idle, idle_data);
+
+ g_idle_add (presets_idle, idle_data);
return NULL;
}
g_object_ref (self);
g_thread_create (presets_loader, self, FALSE, NULL);
+ hildon_help_dialog_help_enable (GTK_DIALOG(self), "applications_email_wizardwelcome",
+ modest_maemo_utils_get_osso_context());
}
ModestEasysetupWizardDialog*
create_account (ModestEasysetupWizardDialog *self, gboolean enabled)
{
ModestEasysetupWizardDialogPrivate *priv = WIZARD_DIALOG_GET_PRIVATE (self);
-
+ guint special_port;
gchar* display_name = get_entered_account_title (self);
/* Some checks: */
provider_id,
TRUE /* incoming */);
- g_warning ("security incoming: %x", security_incoming);
/* We don't check for SMTP here as that is impossible for an incoming server. */
if (servertype_incoming == MODEST_PRESETS_SERVER_TYPE_IMAP) {
gchar *store_name = modest_account_mgr_get_unused_account_name (self->account_manager,
store_name_start, TRUE /* server account */);
g_free (store_name_start);
+
+ /* we check if there is a *special* port */
+ special_port = modest_presets_get_port (priv->presets, provider_id,
+ TRUE /* incoming */);
+ if (special_port != 0)
+ serverport_incoming = special_port;
+
gboolean created = modest_account_mgr_add_server_account (self->account_manager,
store_name,
servername_incoming,
modest_presets_get_info_server_security (priv->presets, provider_id,
FALSE /* incoming */);
- /* TODO: The secure-smtp information in the presets data is currently wrong,
- * so we choose a reasonable default. Remove this when the presets data is corrected: */
- security_outgoing = security_outgoing & MODEST_PRESETS_SECURITY_SECURE_SMTP;
-
protocol_security_outgoing = MODEST_PROTOCOL_CONNECTION_NORMAL;
if (security_outgoing & MODEST_PRESETS_SECURITY_SECURE_SMTP) {
/* printf("DEBUG: %s: using secure SMTP\n", __FUNCTION__); */
/* printf("DEBUG: %s: using non-secure SMTP\n", __FUNCTION__); */
protocol_authentication_outgoing = MODEST_PROTOCOL_AUTH_NONE;
}
- }
- else {
+ } else {
/* Use custom pages because no preset was specified: */
servername_outgoing = g_strdup (gtk_entry_get_text (GTK_ENTRY (self->entry_outgoingserver) ));
gchar *transport_name = modest_account_mgr_get_unused_account_name (self->account_manager,
transport_name_start, TRUE /* server account */);
g_free (transport_name_start);
+
+ /* we check if there is a *special* port */
+ special_port = modest_presets_get_port (priv->presets, provider_id,
+ FALSE /* incoming */);
+ if (special_port != 0)
+ serverport_outgoing = special_port;
+
created = modest_account_mgr_add_server_account (self->account_manager,
transport_name,
servername_outgoing,