diff options
Diffstat (limited to 'shell/e-shell.c')
-rw-r--r-- | shell/e-shell.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/shell/e-shell.c b/shell/e-shell.c index 1f8628c2fe..6d793926af 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -287,7 +287,7 @@ impl_Shell_createNewView (PortableServer_Servant servant, return CORBA_OBJECT_NIL; } - shell_view = e_shell_create_view (shell, uri); + shell_view = e_shell_create_view (shell, uri, NULL); if (shell_view == NULL) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_GNOME_Evolution_Shell_NotFound, NULL); @@ -1089,6 +1089,7 @@ e_shell_new (const char *local_directory, * e_shell_create_view: * @shell: The shell for which to create a new view. * @uri: URI for the new view. + * @template_view: Window from which to copy the view settings (can be %NULL). * * Create a new view for @uri. * @@ -1096,7 +1097,8 @@ e_shell_new (const char *local_directory, **/ EShellView * e_shell_create_view (EShell *shell, - const char *uri) + const char *uri, + EShellView *template_view) { EShellView *view; EShellPrivate *priv; @@ -1126,6 +1128,11 @@ e_shell_create_view (EShell *shell, task_bar = e_shell_view_get_task_bar (view); e_activity_handler_attach_task_bar (priv->activity_handler, task_bar); + if (template_view != NULL) { + e_shell_view_show_folder_bar (view, e_shell_view_folder_bar_shown (template_view)); + e_shell_view_show_shortcut_bar (view, e_shell_view_shortcut_bar_shown (template_view)); + } + return view; } @@ -1393,9 +1400,7 @@ e_shell_restore_from_settings (EShell *shell) for (i = 0; i < num_views; i++) { EShellView *view; - /* FIXME: restore the URI here. There should be an - e_shell_create_view_from_configuration() thingie. */ - view = e_shell_create_view (shell, NULL); + view = e_shell_create_view (shell, NULL, NULL); if (! e_shell_view_load_settings (view, i)) retval = FALSE; |