# HG changeset patch # User William Pitcock # Date 1192150805 18000 # Node ID 6f69821080014feeb79509573c5a508b52180420 # Parent 48795d67d9cb4b2a543509efe747c3060e5385c6 Add a function to eventqueue API, event_queue_timed() which calls a hook at a postponed time. diff -r 48795d67d9cb -r 6f6982108001 src/audacious/eventqueue.c --- a/src/audacious/eventqueue.c Thu Oct 11 19:51:08 2007 -0500 +++ b/src/audacious/eventqueue.c Thu Oct 11 20:00:05 2007 -0500 @@ -45,3 +45,17 @@ g_idle_add_full(G_PRIORITY_HIGH_IDLE, eventqueue_handle, hq, NULL); } + +void event_queue_timed(gint time, const gchar *name, gpointer data) +{ + HookCallQueue *hq; + + g_return_if_fail(name != NULL); + g_return_if_fail(user_data != NULL); + + hq = g_slice_new0(HookCallQueue); + hq->name = g_strdup(name); + hq->user_data = user_data; + + g_timeout_add(time, eventqueue_handle, hq); +} diff -r 48795d67d9cb -r 6f6982108001 src/audacious/eventqueue.h --- a/src/audacious/eventqueue.h Thu Oct 11 19:51:08 2007 -0500 +++ b/src/audacious/eventqueue.h Thu Oct 11 20:00:05 2007 -0500 @@ -31,5 +31,6 @@ } HookCallQueue; void event_queue(const gchar *name, gpointer user_data); +void event_queue_timed(gint time, const gchar *name, gpointer user_data); #endif diff -r 48795d67d9cb -r 6f6982108001 src/audacious/playback.c --- a/src/audacious/playback.c Thu Oct 11 19:51:08 2007 -0500 +++ b/src/audacious/playback.c Thu Oct 11 20:00:05 2007 -0500 @@ -503,7 +503,7 @@ output_set_volume(l, r); } - event_queue("playback seek", playback); + event_queue_timed(10, "playback seek", playback); } void