aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--shell/ChangeLog10
-rw-r--r--shell/e-uri-schema-registry.c2
-rw-r--r--shell/main.c33
3 files changed, 35 insertions, 10 deletions
diff --git a/shell/ChangeLog b/shell/ChangeLog
index 8bb8b91194..19105d1193 100644
--- a/shell/ChangeLog
+++ b/shell/ChangeLog
@@ -1,3 +1,13 @@
+2001-10-11 Ettore Perazzoli <ettore@ximian.com>
+
+ * main.c (idle_cb): Display the default view only if we are
+ starting our own shell, or if the command-line has no arguments
+ and we are talking to an already existing shell.
+
+ * e-uri-schema-registry.c
+ (e_uri_schema_registry_set_handler_for_schema): Do not return a
+ value.
+
2001-10-11 Dan Winship <danw@ximian.com>
* Evolution-Storage.idl: Remove "display_name" arg from update
diff --git a/shell/e-uri-schema-registry.c b/shell/e-uri-schema-registry.c
index a30b9950ee..6591951d0a 100644
--- a/shell/e-uri-schema-registry.c
+++ b/shell/e-uri-schema-registry.c
@@ -156,8 +156,6 @@ e_uri_schema_registry_set_handler_for_schema (EUriSchemaRegistry *registry,
new_handler = schema_handler_new (schema, shell_component);
g_hash_table_insert (priv->schema_to_handler, new_handler->schema, new_handler);
-
- return TRUE;
}
EvolutionShellComponentClient *
diff --git a/shell/main.c b/shell/main.c
index 7ceac7e537..2308862d4d 100644
--- a/shell/main.c
+++ b/shell/main.c
@@ -207,6 +207,7 @@ idle_cb (void *data)
EShellConstructResult result;
GSList *p;
gboolean have_evolution_uri;
+ gboolean display_default;
CORBA_exception_init (&ev);
@@ -259,15 +260,31 @@ idle_cb (void *data)
have_evolution_uri = TRUE;
}
- if (! have_evolution_uri) {
- if (shell == NULL || ! e_shell_restore_from_settings (shell)) {
- const char *uri;
-
- uri = E_SHELL_VIEW_DEFAULT_URI;
- GNOME_Evolution_Shell_handleURI (corba_shell, uri, &ev);
- if (ev._major != CORBA_NO_EXCEPTION)
- g_warning ("CORBA exception %s when requesting URI -- %s", ev._repo_id, uri);
+ if (shell == NULL) {
+ if (uri_list == NULL)
+ display_default = TRUE;
+ else
+ display_default = FALSE;
+ } else {
+ if (! have_evolution_uri) {
+ if (! e_shell_restore_from_settings (shell))
+ display_default = TRUE;
+ else
+ display_default = FALSE;
+ } else {
+ display_default = FALSE;
}
+
+ display_default = FALSE;
+ }
+
+ if (display_default) {
+ const char *uri;
+
+ uri = E_SHELL_VIEW_DEFAULT_URI;
+ GNOME_Evolution_Shell_handleURI (corba_shell, uri, &ev);
+ if (ev._major != CORBA_NO_EXCEPTION)
+ g_warning ("CORBA exception %s when requesting URI -- %s", ev._repo_id, uri);
}
for (p = uri_list; p != NULL; p = p->next) {