diff options
author | Michael Meeks <michael.meeks@novell.com> | 2010-08-11 04:17:40 +0800 |
---|---|---|
committer | Michael Meeks <michael.meeks@novell.com> | 2010-08-11 04:17:40 +0800 |
commit | 18813ccd8f4367ac98348f08e183d858cfe963f5 (patch) | |
tree | 370b866001d65bd5d1c343331bd01d8d4df3f975 /modules/addressbook | |
parent | abd3e2a257586a96cac80f9ac860bba3c3d65d30 (diff) | |
download | gsoc2013-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.c | 5 | ||||
-rw-r--r-- | modules/addressbook/autocompletion-config.h | 3 | ||||
-rw-r--r-- | modules/addressbook/e-book-shell-backend.c | 12 |
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 (); |