diff options
author | Jens Finke <jens@triq.net> | 2003-07-25 14:43:31 +0000 |
---|---|---|
committer | Jens Finke <jens@src.gnome.org> | 2003-07-25 14:43:31 +0000 |
commit | ca85968c89546ce4a31ed34d1ccf2b5b80e5b506 (patch) | |
tree | a7eac97d53f79d8c4715e0e376431205211c66e1 /viewer | |
parent | c01f4cebc5c9bdb27d0ba87d9841367f82f630aa (diff) | |
download | eog-ca85968c89546ce4a31ed34d1ccf2b5b80e5b506.tar.gz |
Based on a patch by Gustavo J. A. M. Carneiro
2003-07-25 Jens Finke <jens@triq.net>
Based on a patch by Gustavo J. A. M. Carneiro
<gustavo@users.sourceforge.net> - #118204.
* configure.in: Require libbonoboui >= 2.3.3.
* collection/main.c (main),
* viewer/main.c (main): Make the factory wait for one minute after
becoming unused before deciding to quit. This default behavior can
be disabled by adding the --nowait commandline parameter.
Diffstat (limited to 'viewer')
-rw-r--r-- | viewer/main.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/viewer/main.c b/viewer/main.c index dc423bb5..5a551b9b 100644 --- a/viewer/main.c +++ b/viewer/main.c @@ -45,8 +45,10 @@ eog_image_viewer_factory (BonoboGenericFactory *this, } int main (int argc, char *argv []) -{ +{ CORBA_Object factory; + gboolean nowait = FALSE; + int i; bindtextdomain (PACKAGE, GNOMELOCALEDIR); bind_textdomain_codeset (PACKAGE, "UTF-8"); @@ -54,11 +56,25 @@ int main (int argc, char *argv []) BONOBO_FACTORY_INIT ("eog-image-viewer", VERSION, &argc, argv); + for (i = 1; i < argc; i++) { + if (!g_ascii_strcasecmp (argv[i], "--nowait")) { + nowait = TRUE; + } + } + factory = bonobo_activation_activate_from_id ("OAFIID:GNOME_EOG_Factory", Bonobo_ACTIVATION_FLAG_EXISTING_ONLY, NULL, NULL); if (!factory) { - return bonobo_generic_factory_main ("OAFIID:GNOME_EOG_Factory", - eog_image_viewer_factory, NULL); + if (nowait) { + /* this is mostly for debugging purpose */ + return bonobo_generic_factory_main ("OAFIID:GNOME_EOG_Factory", + eog_image_viewer_factory, NULL); + } + else { + return bonobo_generic_factory_main_timeout ("OAFIID:GNOME_EOG_Factory", + eog_image_viewer_factory, NULL, + 60000); + } } return 0; } |