Index: addressbook/gui/contact-list-editor/e-contact-list-editor.c
===================================================================
RCS file: /cvs/gnome/evolution/addressbook/gui/contact-list-editor/e-contact-list-editor.c,v
retrieving revision 1.75
diff -u -p -r1.75 e-contact-list-editor.c
--- addressbook/gui/contact-list-editor/e-contact-list-editor.c	27 Jan 2006 15:41:50 -0000	1.75
+++ addressbook/gui/contact-list-editor/e-contact-list-editor.c	3 Feb 2006 10:03:05 -0000
@@ -483,7 +483,11 @@ close_cb (GtkWidget *widget, EContactLis
 static void
 save_and_close_cb (GtkWidget *widget, EContactListEditor *cle)
 {
-	save_contact (cle, TRUE);
+	EABEditor *editor = EAB_EDITOR (cle);
+	if (! (cle->editable  &&  cle->allows_contact_lists))
+		eab_editor_close(editor);
+	else
+		save_contact (cle, TRUE);
 }
 
 static void
@@ -875,7 +879,8 @@ set_editable (EContactListEditor *editor
 	gtk_widget_set_sensitive (editor->add_button, editor->editable && editor->allows_contact_lists);
 	gtk_widget_set_sensitive (editor->remove_button, editor->editable && editor->allows_contact_lists);
 	gtk_widget_set_sensitive (editor->select_button, editor->editable && editor->allows_contact_lists);
-	gtk_widget_set_sensitive (editor->table, editor->editable && editor->allows_contact_lists);
+	gtk_widget_set_sensitive (editor->cancel_button, editor->editable && editor->allows_contact_lists);
+	gtk_widget_set_sensitive (editor->visible_addrs_checkbutton, editor->editable && editor->allows_contact_lists);
 }
 
 /* Callback used when the editor is destroyed */
