Index: D:/eclipse/trunk/server/Slim/Buttons/BrowseDB.pm =================================================================== --- D:/eclipse/trunk/server/Slim/Buttons/BrowseDB.pm (revision 21382) +++ D:/eclipse/trunk/server/Slim/Buttons/BrowseDB.pm (working copy) @@ -153,7 +153,7 @@ } else { $line1 = $client->string($string); - $line2 = browsedbItemName($client, $currentItem); + $line2 = $client->modeParam('itemTitle') || browsedbItemName($client, $currentItem); } $client->showBriefly({ Index: D:/eclipse/trunk/server/Slim/Buttons/XMLBrowser.pm =================================================================== --- D:/eclipse/trunk/server/Slim/Buttons/XMLBrowser.pm (revision 21382) +++ D:/eclipse/trunk/server/Slim/Buttons/XMLBrowser.pm (working copy) @@ -1087,6 +1087,23 @@ $url = $item->{'playlist'}; $type = 'playlist'; } + elsif ( $item->{'type'} eq 'redirect' && $item->{'player'} + && $item->{'player'}->{'mode'} && $item->{'player'}->{'mode'} eq 'browsedb' + && $item->{'player'}->{'modeParams'}) { + + my $functions = Slim::Buttons::BrowseDB::getFunctions(); + + if ($functions->{'play'}) { + + foreach (keys %{ $item->{'player'}->{'modeParams'} }) { + $client->modeParam($_, $item->{'player'}->{'modeParams'}->{$_}); + } + $client->modeParam('itemTitle', $item->{'name'}); + + $functions->{'play'}->($client, $action, lc($action) eq 'add' ? 1 : 0); + } + + } $log->debug("Playing item, action: $action, type: $type, $url");