diff -up xchat-2.8.6/src/common/cfgfiles.c.balloon xchat-2.8.6/src/common/cfgfiles.c --- xchat-2.8.6/src/common/cfgfiles.c.balloon 2008-07-20 01:11:56.000000000 +0200 +++ xchat-2.8.6/src/common/cfgfiles.c 2008-07-20 01:14:05.000000000 +0200 @@ -464,6 +464,7 @@ const struct prefs vars[] = { {"input_balloon_chans", P_OFFINT (input_balloon_chans), TYPE_BOOL}, {"input_balloon_hilight", P_OFFINT (input_balloon_hilight), TYPE_BOOL}, {"input_balloon_priv", P_OFFINT (input_balloon_priv), TYPE_BOOL}, + {"input_balloon_time", P_OFFINT (input_balloon_time), TYPE_INT}, {"input_beep_chans", P_OFFINT (input_beep_chans), TYPE_BOOL}, {"input_beep_hilight", P_OFFINT (input_beep_hilight), TYPE_BOOL}, {"input_beep_msg", P_OFFINT (input_beep_priv), TYPE_BOOL}, @@ -674,6 +675,7 @@ load_config (void) prefs.gui_pane_right_size = 100; prefs.mainwindow_save = 1; prefs.bantype = 2; + prefs.input_balloon_time = 20; prefs.input_flash_priv = prefs.input_flash_hilight = 1; prefs.input_tray_priv = prefs.input_tray_hilight = 1; prefs.autodccsend = 2; /* browse mode */ diff -up xchat-2.8.6/src/common/xchat.h.balloon xchat-2.8.6/src/common/xchat.h --- xchat-2.8.6/src/common/xchat.h.balloon 2008-07-20 01:11:27.000000000 +0200 +++ xchat-2.8.6/src/common/xchat.h 2008-07-20 01:12:20.000000000 +0200 @@ -236,6 +236,7 @@ struct xchatprefs unsigned int input_balloon_chans; unsigned int input_balloon_hilight; unsigned int input_balloon_priv; + unsigned int input_balloon_time; unsigned int input_beep_chans; unsigned int input_beep_hilight; diff -up xchat-2.8.6/src/fe-gtk/plugin-tray.c.balloon xchat-2.8.6/src/fe-gtk/plugin-tray.c --- xchat-2.8.6/src/fe-gtk/plugin-tray.c.balloon 2008-07-20 01:14:28.000000000 +0200 +++ xchat-2.8.6/src/fe-gtk/plugin-tray.c 2008-07-20 01:16:53.000000000 +0200 @@ -178,7 +178,7 @@ libnotify_notify_new (const char *title, g_free ((char *)title); g_free ((char *)text); - nn_set_timeout (noti, 20000); + nn_set_timeout (noti, prefs.input_balloon_time*1000); nn_show (noti, NULL); g_object_unref (G_OBJECT (noti)); @@ -198,6 +198,7 @@ fe_tray_set_balloon (const char *title, #ifndef WIN32 const char *argv[8]; const char *path; + char time[16]; WinStatus ws; /* no balloons if the window is focused */ @@ -223,13 +224,14 @@ fe_tray_set_balloon (const char *title, path = g_find_program_in_path ("notify-send"); if (path) { + sprintf(time, "%d000",prefs.input_balloon_time); argv[0] = path; argv[1] = "-i"; argv[2] = "gtk-dialog-info"; if (access (XCHATSHAREDIR"/pixmaps/xchat.png", R_OK) == 0) argv[2] = XCHATSHAREDIR"/pixmaps/xchat.png"; argv[3] = "-t"; - argv[4] = "20000"; + argv[4] = time; argv[5] = title; text = strip_color (text, -1, STRIP_ALL|STRIP_ESCMARKUP); argv[6] = text;