Allow start logjam in system tray (no main window at start). diff -up logjam-4.5.3/src/conf_xml.c.orig logjam-4.5.3/src/conf_xml.c --- logjam-4.5.3/src/conf_xml.c.orig 2008-05-11 14:35:48.000000000 +0300 +++ logjam-4.5.3/src/conf_xml.c 2008-05-11 14:55:24.000000000 +0300 @@ -184,6 +184,7 @@ parseoptions(Configuration *c, xmlDocPtr READOPTION(cfautostart) READOPTION(cfusemask) READOPTION(docklet) + READOPTION(start_in_dock) READOPTION(cffloat) READOPTION(cffloatraise) READOPTION(friends_hidestats) @@ -326,6 +327,7 @@ writeoptions(Options *options, xmlNodePt WRITEOPTION(cfautostart); WRITEOPTION(cfusemask); WRITEOPTION(docklet); + WRITEOPTION(start_in_dock); WRITEOPTION(cffloatraise); WRITEOPTION(cffloat); WRITEOPTION(friends_hidestats); diff -up logjam-4.5.3/src/jam.c.orig logjam-4.5.3/src/jam.c --- logjam-4.5.3/src/jam.c.orig 2005-09-10 04:45:01.000000000 +0300 +++ logjam-4.5.3/src/jam.c 2008-05-11 14:56:59.000000000 +0300 @@ -832,7 +832,8 @@ jam_run(JamDoc *doc) { gtk_widget_show(vbox); jam_update_actions(jw); - gtk_widget_show(GTK_WIDGET(jw)); + if (!conf.options.start_in_dock) + gtk_widget_show(GTK_WIDGET(jw)); /* suck a bunch of events in. */ while (gtk_events_pending()) diff -up logjam-4.5.3/src/conf.h.orig logjam-4.5.3/src/conf.h --- logjam-4.5.3/src/conf.h.orig 2005-02-21 19:46:10.000000000 +0200 +++ logjam-4.5.3/src/conf.h 2008-05-11 14:54:16.000000000 +0300 @@ -59,6 +59,7 @@ typedef struct { gboolean allowmultipleinstances; gboolean smartquotes; gboolean showmeta[JAM_VIEW_META_COUNT]; + gboolean start_in_dock; #endif /* HAVE_GTK */ } Options; diff -up logjam-4.5.3/src/settings.c.orig logjam-4.5.3/src/settings.c --- logjam-4.5.3/src/settings.c.orig 2005-02-21 20:31:21.000000000 +0200 +++ logjam-4.5.3/src/settings.c 2008-05-11 14:59:13.000000000 +0300 @@ -87,6 +87,8 @@ static SettingsWidget settingswidgets[] #ifndef G_OS_WIN32 { "ui_docklet", &conf.options.docklet, SW_TOGGLE, N_("Add icon to system _tray (for GNOME/KDE/etc. dock)") }, + { "ui_start_in_dock", &conf.options.start_in_dock, + SW_TOGGLE, N_("Start in system tray") }, #endif #ifndef G_OS_WIN32 @@ -460,6 +462,10 @@ uisettings(JamWin *jw) { g_signal_connect(G_OBJECT(button), "toggled", G_CALLBACK(docklet_change_cb), jw); groupedbox_pack(GROUPEDBOX(misc), button, FALSE); + button = sw_make("ui_start_in_dock"); + g_signal_connect(G_OBJECT(button), "toggled", + NULL, NULL); + groupedbox_pack(GROUPEDBOX(misc), button, FALSE); #endif /* USE_DOCK */ return vbox;