From 1f84f2755b7e89d4a167854b84a0d27d1c660e3c Mon Sep 17 00:00:00 2001 From: Bryan Schumaker Date: Sun, 29 May 2011 14:59:29 -0400 Subject: [PATCH] libsaria: Fix playlist num_visible() When the playlist is changed, I need to test song ids against the visible set to get the correct number --- libsaria/sources/playlist/__init__.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/libsaria/sources/playlist/__init__.py b/libsaria/sources/playlist/__init__.py index 1f166312..869ef96a 100644 --- a/libsaria/sources/playlist/__init__.py +++ b/libsaria/sources/playlist/__init__.py @@ -6,12 +6,26 @@ import next # Function pointers for convenience add_ids = playlist.add_ids -rm_ids = playlist.rm_ids -reset = playlist.reset playlist.load() visible = playlist.as_set() +def add_ids(ids): + for id in ids: + if libsaria.sources.is_visible(id): + visible.add(id) + playlist.add_ids(ids) + +def rm_ids(ids): + global visible + visible = visible - set(ids) + playlist.rm_ids(ids) + +def reset(): + global visible + visible = set() + playlist.reset() + def list_ids(): for id in playlist.song_list: yield id