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 /shell | |
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 'shell')
-rw-r--r-- | shell/e-shell-window-actions.c | 1 | ||||
-rw-r--r-- | shell/e-shell.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/shell/e-shell-window-actions.c b/shell/e-shell-window-actions.c index 0e421c02ae..c619ac27cd 100644 --- a/shell/e-shell-window-actions.c +++ b/shell/e-shell-window-actions.c @@ -915,6 +915,7 @@ action_preferences_cb (GtkAction *action, shell = e_shell_window_get_shell (shell_window); preferences_window = e_shell_get_preferences_window (shell); + e_preferences_window_setup (E_PREFERENCES_WINDOW (preferences_window)); gtk_window_set_transient_for ( GTK_WINDOW (preferences_window), diff --git a/shell/e-shell.c b/shell/e-shell.c index a97bc24391..9ed43fc110 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -1146,7 +1146,7 @@ e_shell_init (EShell *shell) shell->priv->settings = g_object_new (E_TYPE_SHELL_SETTINGS, NULL); shell->priv->gconf_client = gconf_client_get_default (); - shell->priv->preferences_window = e_preferences_window_new (); + shell->priv->preferences_window = e_preferences_window_new (shell); shell->priv->backends_by_name = backends_by_name; shell->priv->backends_by_scheme = backends_by_scheme; shell->priv->safe_mode = e_file_lock_exists (); |