diff options
author | Ettore Perazzoli <ettore@src.gnome.org> | 2003-01-11 03:57:21 +0800 |
---|---|---|
committer | Ettore Perazzoli <ettore@src.gnome.org> | 2003-01-11 03:57:21 +0800 |
commit | 62e880130bebe19aef3eef95dc4d66578950c0c2 (patch) | |
tree | fbce9bbbe9ca4cd7c6e98b7883825e7150f7eb1d /shell/main.c | |
parent | 4a8c1c7323bbde12c2213228f272cdaf5f5039ab (diff) | |
download | gsoc2013-evolution-62e880130bebe19aef3eef95dc4d66578950c0c2.tar.gz gsoc2013-evolution-62e880130bebe19aef3eef95dc4d66578950c0c2.tar.zst gsoc2013-evolution-62e880130bebe19aef3eef95dc4d66578950c0c2.zip |
Generate the URI list from the popt context fetched from the GnomeProgram
* main.c (main): Generate the URI list from the popt context
fetched from the GnomeProgram object.
* e-shell-view.c (setup_defaults): Removed @setup_default_uri arg.
Don't load any URI here.
(e_shell_view_construct): Open the URI here instead.
svn path=/trunk/; revision=19409
Diffstat (limited to 'shell/main.c')
-rw-r--r-- | shell/main.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/shell/main.c b/shell/main.c index 10de4e9be3..de11af7b8b 100644 --- a/shell/main.c +++ b/shell/main.c @@ -456,6 +456,10 @@ main (int argc, char **argv) { NULL, '\0', 0, NULL, 0, NULL, NULL } }; GSList *uri_list; + GValue popt_context_value = { 0, }; + GnomeProgram *program; + poptContext popt_context; + const char **args; /* Make ElectricFence work. */ free (malloc (10)); @@ -464,11 +468,11 @@ main (int argc, char **argv) bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); textdomain (GETTEXT_PACKAGE); - gnome_program_init (PACKAGE, VERSION, LIBGNOMEUI_MODULE, argc, argv, - GNOME_PROGRAM_STANDARD_PROPERTIES, - GNOME_PARAM_POPT_TABLE, options, - GNOME_PARAM_HUMAN_READABLE_NAME, _("Evolution"), - NULL); + program = gnome_program_init (PACKAGE, VERSION, LIBGNOMEUI_MODULE, argc, argv, + GNOME_PROGRAM_STANDARD_PROPERTIES, + GNOME_PARAM_POPT_TABLE, options, + GNOME_PARAM_HUMAN_READABLE_NAME, _("Evolution"), + NULL); if (start_online && start_offline) { fprintf (stderr, _("%s: --online and --offline cannot be used together.\n Use %s --help for more information.\n"), @@ -502,7 +506,9 @@ main (int argc, char **argv) uri_list = NULL; -#if 0 + g_value_init (&popt_context_value, G_TYPE_POINTER); + g_object_get_property (G_OBJECT (program), GNOME_PARAM_POPT_CONTEXT, &popt_context_value); + popt_context = g_value_get_pointer (&popt_context_value); args = poptGetArgs (popt_context); if (args != NULL) { const char **p; @@ -510,7 +516,8 @@ main (int argc, char **argv) for (p = args; *p != NULL; p++) uri_list = g_slist_prepend (uri_list, (char *) *p); } -#endif + uri_list = g_slist_reverse (uri_list); + g_value_unset (&popt_context_value); gtk_idle_add (idle_cb, uri_list); |