aboutsummaryrefslogtreecommitdiffstats
path: root/modules/addressbook
diff options
context:
space:
mode:
authorMichael Meeks <michael.meeks@novell.com>2010-08-11 04:17:40 +0800
committerMichael Meeks <michael.meeks@novell.com>2010-08-11 04:17:40 +0800
commit18813ccd8f4367ac98348f08e183d858cfe963f5 (patch)
tree370b866001d65bd5d1c343331bd01d8d4df3f975 /modules/addressbook
parentabd3e2a257586a96cac80f9ac860bba3c3d65d30 (diff)
downloadgsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.tar
gsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.tar.gz
gsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.tar.bz2
gsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.tar.lz
gsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.tar.xz
gsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.tar.zst
gsoc2013-evolution-18813ccd8f4367ac98348f08e183d858cfe963f5.zip
Defer the load / creation of configuration UI with changes to
e_preferences_window to take factory callbacks and store a reference to the shell. - This makes start-up substantially faster, particularly on Atom (eg.). Remove a number of idle handlers used to create these UIs in the first instance, cleaning the code.
Diffstat (limited to 'modules/addressbook')
-rw-r--r--modules/addressbook/autocompletion-config.c5
-rw-r--r--modules/addressbook/autocompletion-config.h3
-rw-r--r--modules/addressbook/e-book-shell-backend.c12
3 files changed, 16 insertions, 4 deletions
diff --git a/modules/addressbook/autocompletion-config.c b/modules/addressbook/autocompletion-config.c
index 99a8b9b8ae..c7ee192962 100644
--- a/modules/addressbook/autocompletion-config.c
+++ b/modules/addressbook/autocompletion-config.c
@@ -129,7 +129,7 @@ add_section (GtkWidget *container,
}
GtkWidget *
-autocompletion_config_new (EShell *shell)
+autocompletion_config_new (EPreferencesWindow *window)
{
EShellSettings *shell_settings;
ESourceList *source_list;
@@ -138,6 +138,9 @@ autocompletion_config_new (EShell *shell)
GtkWidget *itembox;
GtkWidget *widget;
GtkWidget *vbox;
+ EShell *shell;
+
+ shell = e_preferences_window_get_shell (window);
g_return_val_if_fail (E_IS_SHELL (shell), NULL);
diff --git a/modules/addressbook/autocompletion-config.h b/modules/addressbook/autocompletion-config.h
index 7f94a07ab9..8825161732 100644
--- a/modules/addressbook/autocompletion-config.h
+++ b/modules/addressbook/autocompletion-config.h
@@ -27,10 +27,11 @@
#include <glib.h>
#include <shell/e-shell.h>
+#include <widgets/misc/e-preferences-window.h>
G_BEGIN_DECLS
-GtkWidget * autocompletion_config_new (EShell *shell);
+GtkWidget *autocompletion_config_new (EPreferencesWindow *window);
G_END_DECLS
diff --git a/modules/addressbook/e-book-shell-backend.c b/modules/addressbook/e-book-shell-backend.c
index 6f3861dad0..d4bf995b90 100644
--- a/modules/addressbook/e-book-shell-backend.c
+++ b/modules/addressbook/e-book-shell-backend.c
@@ -301,9 +301,18 @@ book_shell_backend_init_preferences (EShell *shell)
"contacts",
"preferences-autocompletion",
_("Contacts"),
- autocompletion_config_new (shell),
+ autocompletion_config_new,
200);
+ preferences_window = e_shell_get_preferences_window (shell);
+ e_preferences_window_add_page (
+ E_PREFERENCES_WINDOW (preferences_window),
+ "certificates",
+ "preferences-certificates",
+ _("Certificates"),
+ certificate_manager_config_new,
+ 700);
+
return FALSE;
}
@@ -460,7 +469,6 @@ book_shell_backend_constructed (GObject *object)
* things that use S/MIME. Maybe put it in EShell? */
#ifdef ENABLE_SMIME
smime_component_init ();
- certificate_manager_config_init (shell);
#endif
book_shell_backend_init_importers ();