Mercurial > pidgin.yaz
changeset 17238:b25c4fe3a8ce
merge of '0dc88a60c9f45d428227765d7948abfd6fd3bc00'
and '41a02fda7df68e244c0c9c73780f398fa4ae5fcc'
author | Sadrul Habib Chowdhury <imadil@gmail.com> |
---|---|
date | Tue, 22 May 2007 07:51:02 +0000 |
parents | 5033139b3ead (diff) 3980c6462564 (current diff) |
children | b61baeefbe38 |
files | |
diffstat | 1 files changed, 18 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/pidgin/gtkdebug.c Tue May 22 06:36:14 2007 +0000 +++ b/pidgin/gtkdebug.c Tue May 22 07:51:02 2007 +0000 @@ -77,6 +77,7 @@ }; static DebugWindow *debug_win = NULL; +static guint debug_enabled_timer = 0; #ifdef HAVE_REGEX_H static void regex_filter_all(DebugWindow *win); @@ -864,14 +865,24 @@ return win; } +static gboolean +debug_enabled_timeout_cb(gpointer data) +{ + debug_enabled_timer = 0; + + if (data) + pidgin_debug_window_show(); + else + pidgin_debug_window_hide(); + + return FALSE; +} + static void debug_enabled_cb(const char *name, PurplePrefType type, gconstpointer value, gpointer data) { - if (value) - pidgin_debug_window_show(); - else - pidgin_debug_window_hide(); + debug_enabled_timer = g_timeout_add(0, debug_enabled_timeout_cb, GINT_TO_POINTER(GPOINTER_TO_INT(value))); } static void @@ -984,6 +995,9 @@ pidgin_debug_uninit(void) { purple_debug_set_ui_ops(NULL); + + if (debug_enabled_timer != 0) + g_source_remove(debug_enabled_timer); } void