summaryrefslogtreecommitdiff
path: root/src/update.c
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2009-07-05 08:46:53 +0200
committerMax Kellermann <max@duempel.org>2009-07-05 08:46:53 +0200
commitd4914fc9ef4fda21f833e88a59d50d54fafd6379 (patch)
treee9a7f3bab19ac13227e9e44e75e91fd27a15ef95 /src/update.c
parent46c19b82494c9954fd6dafb955a1a5851e20d44d (diff)
idle: added "update" event
Some clients have visual feedback for "database update is running". Using the "database" idle event is unreliable, because it is only emitted when the database was actually modified. This patch adds the "update" event, which is emitted when the update is started, and again when the update is finished, disregarding whether it has been modified.
Diffstat (limited to 'src/update.c')
-rw-r--r--src/update.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/update.c b/src/update.c
index 1088f5338..d3e3b7650 100644
--- a/src/update.c
+++ b/src/update.c
@@ -822,6 +822,9 @@ directory_update_init(char *path)
return next_task_id > update_task_id_max ? 1 : next_task_id;
}
spawn_update_task(path);
+
+ idle_add(IDLE_UPDATE);
+
return update_task_id;
}
@@ -861,6 +864,8 @@ static void update_finished_event(void)
g_thread_join(update_thr);
+ idle_add(IDLE_UPDATE);
+
if (modified) {
/* send "idle" events */
playlistVersionChange(&g_playlist);