From 7374ca75f7b62e44ada6d9b0aade9d4c6a770db8 Mon Sep 17 00:00:00 2001 From: Miika Pekkarinen Date: Wed, 26 Jul 2006 06:44:39 +0000 Subject: Fixed single track insertion to playlist from tagcache. Fixes FS#5719. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10328 a1c6a512-1295-4272-9138-f99709370657 --- apps/tagtree.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/apps/tagtree.c b/apps/tagtree.c index b92e4cb93c..b5ec10b04f 100644 --- a/apps/tagtree.c +++ b/apps/tagtree.c @@ -424,7 +424,7 @@ static void tagtree_unbuffer_event(struct mp3entry *id3, bool last_track) bool tagtree_export(void) { - gui_syncsplash(0, true, str(LANG_WAIT)); + gui_syncsplash(0, true, str(LANG_CREATING)); if (!tagcache_create_changelog(&tcs)) { gui_syncsplash(HZ*2, true, str(LANG_FAILED)); @@ -962,10 +962,24 @@ bool insert_all_playlist(struct tree_context *c, int position, bool queue) bool tagtree_insert_selection_playlist(int position, bool queue) { struct tagentry *dptr; + char buf[MAX_PATH]; int dirlevel = tc->dirlevel; dptr = tagtree_get_entry(tc, tc->selected_item); + /* Insert a single track? */ + if (dptr->newtable == playtrack) + { + if (tagtree_get_filename(tc, buf, sizeof buf) < 0) + { + logf("tagtree_get_filename failed"); + return false; + } + playlist_insert_track(NULL, buf, position, queue); + + return true; + } + /* We need to set the table to allsubentries. */ if (dptr->newtable == navibrowse) { -- cgit v1.2.3