diff --git a/libsaria/data.py b/libsaria/data.py index 9dbdc5cb..6ea02a56 100644 --- a/libsaria/data.py +++ b/libsaria/data.py @@ -39,6 +39,7 @@ def universal_open(file): global plugin if path.is_dir(file): libsaria.collection.new_source(file) + return file = file.replace("%20", " ") split = path.splitext(file) ext = split[1] diff --git a/libsaria/music/audio.py b/libsaria/music/audio.py index 0f163ae6..1e888426 100644 --- a/libsaria/music/audio.py +++ b/libsaria/music/audio.py @@ -54,7 +54,10 @@ def duration(): if get_state() == gst.STATE_NULL: return 0 if length == None: - length = player.query_duration(time)[0] + try: + length = player.query_duration(time)[0] + except: + length = 0 return float(length) @@ -63,7 +66,10 @@ def position(): global player if get_state() == gst.STATE_NULL: return float(0) - pos = player.query_position(time)[0] + try: + pos = player.query_position(time)[0] + except: + pos = 0 return float(pos) diff --git a/ocarina/collection.py b/ocarina/collection.py index 2406dbc1..d9850ece 100644 --- a/ocarina/collection.py +++ b/ocarina/collection.py @@ -58,9 +58,11 @@ class Collection(gtk.ScrolledWindow): list.set_value(list_iter, len(list_row)-1, "Played: %s"%string) def add_selected_to_playlist(self): + print "adding selected to playlist" self.list.for_each_selected(collection.plist_add_libid) collection.plist_save() collection.plist_refresh() + print "done!" class Library(Collection): @@ -112,7 +114,7 @@ class Playlist(Collection): Collection.__init__(self, actions) libsaria.event.invite("POSTSTART", self.populate, bg=True) - libsaria.event.invite("POSTPLISTREFRESH", self.refresh) + libsaria.event.invite("PREPLISTREFRESH", self.refresh) def refresh(self, arg=None): self.clear()