diff options
author | Dan Winship <danw@src.gnome.org> | 2002-04-08 23:30:02 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2002-04-08 23:30:02 +0800 |
commit | c357c638049b6a83ec05fa95f236818e8d0528e5 (patch) | |
tree | 281935c79bbdb701d2a307d186dd7442701d69cb /shell/e-shell.c | |
parent | 851c96fac4f9a670dc260fddc9aeaf675aeb2227 (diff) | |
download | gsoc2013-evolution-c357c638049b6a83ec05fa95f236818e8d0528e5.tar.gz gsoc2013-evolution-c357c638049b6a83ec05fa95f236818e8d0528e5.tar.zst gsoc2013-evolution-c357c638049b6a83ec05fa95f236818e8d0528e5.zip |
Fix "evolution evolution:/path/to/folder" to use default view
prefs.
* e-shell.c (impl_Shell_createNewView): Use
e_shell_create_view_from_uri_and_settings to create the new view
based on saved view 0 instead of always using the initial
evolution defaults.
(e_shell_create_view_from_uri_and_settings): Renamed and
simplified; the template_view argument was useless and
settings_found would always be set to TRUE in the context it was
being used it.
(e_shell_restore_from_settings): Simplify for
e_shell_create_view_from_uri_and_settings changes.
* e-shell-view.c (e_shell_view_load_settings): Only load the
DisplayedURI if the view isn't already displaying a URI. Also,
pass an &ev to the first bonobo_config_get_long so we can tell if
it failed and bail out.
* e-shell-view.h: Remove a prototype for a non-existent function
(e_shell_view_remove_control_for_uri).
* main.c (idle_cb): Add some comments here and remove some dead
code.
svn path=/trunk/; revision=16389
Diffstat (limited to 'shell/e-shell.c')
-rw-r--r-- | shell/e-shell.c | 33 |
1 files changed, 9 insertions, 24 deletions
diff --git a/shell/e-shell.c b/shell/e-shell.c index f15348e95f..36fc5f3049 100644 --- a/shell/e-shell.c +++ b/shell/e-shell.c @@ -402,7 +402,7 @@ impl_Shell_createNewView (PortableServer_Servant servant, return CORBA_OBJECT_NIL; } - shell_view = e_shell_create_view (shell, uri, NULL); + shell_view = e_shell_create_view_from_uri_and_settings (shell, uri, 0); if (shell_view == NULL) { CORBA_exception_set (ev, CORBA_USER_EXCEPTION, ex_GNOME_Evolution_Shell_NotFound, NULL); @@ -1388,20 +1388,17 @@ e_shell_create_view (EShell *shell, } EShellView * -e_shell_create_view_from_settings (EShell *shell, - const char *uri, - EShellView *template_view, - int view_num, - gboolean *settings_found) +e_shell_create_view_from_uri_and_settings (EShell *shell, + const char *uri, + int view_num) { EShellView *view; g_return_val_if_fail (shell != NULL, NULL); g_return_val_if_fail (E_IS_SHELL (shell), NULL); - view = create_view (shell, uri, template_view); - - *settings_found = e_shell_view_load_settings (view, view_num); + view = create_view (shell, uri, NULL); + e_shell_view_load_settings (view, view_num); gtk_widget_show (GTK_WIDGET (view)); while (gtk_events_pending ()) @@ -1672,7 +1669,6 @@ gboolean e_shell_restore_from_settings (EShell *shell) { EShellPrivate *priv; - gboolean retval; int num_views; int i; @@ -1684,21 +1680,10 @@ e_shell_restore_from_settings (EShell *shell) num_views = bonobo_config_get_long_with_default (priv->db, "/Shell/Views/NumberOfViews", 0, NULL); - if (num_views == 0) - return FALSE; - - retval = TRUE; + for (i = 0; i < num_views; i++) + e_shell_create_view_from_uri_and_settings (shell, NULL, i); - for (i = 0; i < num_views; i++) { - EShellView *view; - gboolean settings_found; - - view = e_shell_create_view_from_settings (shell, NULL, NULL, i, &settings_found); - if (! settings_found) - retval = FALSE; - } - - return retval; + return (num_views > 0); } /** |