* Added two missing unref's
[modest] / src / maemo / modest-account-settings-dialog.c
index 12656cb..922ba55 100644 (file)
@@ -297,14 +297,15 @@ static GtkWidget*
 create_page_account_details (ModestAccountSettingsDialog *self)
 {
        GtkWidget *box = gtk_vbox_new (FALSE, MODEST_MARGIN_NONE);
-       GtkWidget *label = gtk_label_new(_("mcen_ia_accountdetails"));
-       gtk_box_pack_start (GTK_BOX (box), label, FALSE, FALSE, MODEST_MARGIN_HALF);
-       gtk_widget_show (label);
+       GtkAdjustment *focus_adjustment = NULL;
        
        /* Create a size group to be used by all captions.
         * Note that HildonCaption does not create a default size group if we do not specify one.
         * We use GTK_SIZE_GROUP_HORIZONTAL, so that the widths are the same. */
        GtkSizeGroup* sizegroup = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
+       GtkWidget *scrollwin = gtk_scrolled_window_new (NULL, NULL);
+       gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrollwin),
+                                       GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
            
        /* The description widgets: */  
        self->entry_account_title = GTK_WIDGET (modest_validating_entry_new ());
@@ -376,7 +377,13 @@ create_page_account_details (ModestAccountSettingsDialog *self)
        
        gtk_widget_show (GTK_WIDGET (box));
        
-       return GTK_WIDGET (box);
+       gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrollwin), box);
+       gtk_widget_show (scrollwin);
+
+       focus_adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (scrollwin));
+       gtk_container_set_focus_vadjustment (GTK_CONTAINER (box), focus_adjustment); 
+       
+       return GTK_WIDGET (scrollwin);
 }
 
 static gchar*
@@ -697,8 +704,7 @@ on_button_outgoing_smtp_servers (GtkButton *button, gpointer user_data)
        if (!(self->specific_window)) {
                self->specific_window = GTK_WIDGET (modest_connection_specific_smtp_window_new ());
                modest_connection_specific_smtp_window_fill_with_connections (
-                       MODEST_CONNECTION_SPECIFIC_SMTP_WINDOW (self->specific_window), self->account_manager, 
-                       self->account_name);
+                       MODEST_CONNECTION_SPECIFIC_SMTP_WINDOW (self->specific_window), self->account_manager);
        }
 
        /* Show the window: */  
@@ -1028,15 +1034,19 @@ check_data (ModestAccountSettingsDialog *self)
                        HILDON_NUMBER_EDITOR (self->entry_incoming_port));
        const gchar* username = gtk_entry_get_text (GTK_ENTRY (self->entry_user_username));
 
+       /*
        const ModestConnectionProtocol protocol_security_incoming = modest_serversecurity_combo_box_get_active_serversecurity (
                MODEST_SERVERSECURITY_COMBO_BOX (self->combo_incoming_security));
-
+       */
        /* If we use an encrypted protocol then there is no need to encrypt the password */
-       if (!modest_protocol_info_is_secure(protocol_security_incoming))
+       /* I don't think this is a good assumption. It overrides the user's request. murrayc: 
+        *  if (!modest_protocol_info_is_secure(protocol_security_incoming)) */
+       if (TRUE)
        {
                if (gtk_toggle_button_get_active (
                                GTK_TOGGLE_BUTTON (self->checkbox_incoming_auth))) {
                        GError *error = NULL;
+
                        GList *list_auth_methods = 
                                modest_maemo_utils_get_supported_secure_authentication_methods (self->incoming_protocol, 
                                        hostname, port_num, username, GTK_WINDOW (self), &error);
@@ -1046,7 +1056,7 @@ check_data (ModestAccountSettingsDialog *self)
                                GList* method;
                                for (method = list_auth_methods; method != NULL; method = g_list_next(method))
                                {
-                                       ModestAuthProtocol proto = (ModestAuthProtocol)(GPOINTER_TO_INT(list_auth_methods->data));
+                                       ModestAuthProtocol proto = (ModestAuthProtocol)(GPOINTER_TO_INT(method->data));
                                        // Allow secure methods, e.g MD5 only
                                        if (modest_protocol_info_auth_is_secure(proto))
                                        {
@@ -1175,8 +1185,8 @@ modest_account_settings_dialog_init (ModestAccountSettingsDialog *self)
        gtk_widget_show (GTK_WIDGET (self->notebook));
         
     /* Add the buttons: */
-    gtk_dialog_add_button (GTK_DIALOG(self), GTK_STOCK_OK, GTK_RESPONSE_OK);
-    gtk_dialog_add_button (GTK_DIALOG(self), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+    gtk_dialog_add_button (GTK_DIALOG(self), _("mcen_bd_dialog_ok"), GTK_RESPONSE_OK);
+    gtk_dialog_add_button (GTK_DIALOG(self), _("mcen_bd_dialog_cancel"), GTK_RESPONSE_CANCEL);
     
     /* Connect to the dialog's response signal: */
     /* We use connect-before 
@@ -1306,8 +1316,7 @@ void modest_account_settings_dialog_set_account_name (ModestAccountSettingsDialo
                const ModestAuthProtocol secure_auth = modest_server_account_get_secure_auth(
                        dialog->account_manager, incoming_account->account_name);
                dialog->protocol_authentication_incoming = secure_auth;
-               if (modest_protocol_info_is_secure(security) || 
-                               modest_protocol_info_auth_is_secure(secure_auth))
+               if (modest_protocol_info_auth_is_secure(secure_auth))
                {
                        gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON (dialog->checkbox_incoming_auth), 
                                                                                                                                         TRUE);
@@ -1380,8 +1389,7 @@ void modest_account_settings_dialog_set_account_name (ModestAccountSettingsDialo
                
                const gboolean has_specific = 
                        modest_account_mgr_get_use_connection_specific_smtp (
-                               dialog->account_manager, 
-                               account_name);
+                               dialog->account_manager, account_name);
                gtk_toggle_button_set_active (
                        GTK_TOGGLE_BUTTON (dialog->checkbox_outgoing_smtp_specific), 
                        has_specific);
@@ -1571,11 +1579,11 @@ save_configuration (ModestAccountSettingsDialog *dialog)
        account_title = NULL;
        
        /* Save connection-specific SMTP server accounts: */
-        modest_account_mgr_set_use_connection_specific_smtp(dialog->account_manager, account_name,
-               gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->checkbox_outgoing_smtp_specific)));
+       modest_account_mgr_set_use_connection_specific_smtp(dialog->account_manager, account_name,
+               gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(dialog->checkbox_outgoing_smtp_specific)));
        if (dialog->specific_window) {
                return modest_connection_specific_smtp_window_save_server_accounts (
-                       MODEST_CONNECTION_SPECIFIC_SMTP_WINDOW (dialog->specific_window), account_name);
+                       MODEST_CONNECTION_SPECIFIC_SMTP_WINDOW (dialog->specific_window));
        }
        else
                return TRUE;