Index: Slim/Buttons/Common.pm =================================================================== RCS file: /home/cvs/cvsroot/slim/server/Slim/Buttons/Common.pm,v retrieving revision 1.40 diff -u -p -B -r1.40 Common.pm --- Slim/Buttons/Common.pm 1 Sep 2004 01:27:18 -0000 1.40 +++ Slim/Buttons/Common.pm 29 Sep 2004 08:10:50 -0000 @@ -329,7 +317,7 @@ my %functions = ( $client->showBriefly(string('VIEWING_PLAYLIST'), ""); } } else { - if ($buttonarg =~ /^[0-5]$/) { + if ($buttonarg =~ /^[0-7]$/) { Slim::Utils::Prefs::clientSet($client, "playingDisplayMode", $buttonarg); } } Index: Slim/Buttons/Playlist.pm =================================================================== RCS file: /home/cvs/cvsroot/slim/server/Slim/Buttons/Playlist.pm,v retrieving revision 1.36 diff -u -p -B -r1.36 Playlist.pm --- Slim/Buttons/Playlist.pm 13 Sep 2004 18:44:42 -0000 1.36 +++ Slim/Buttons/Playlist.pm 29 Sep 2004 08:10:50 -0000 @@ -38,12 +38,12 @@ my %functions = ( # 4 show elapsed time and progress bar # 5 show remaining time and progress bar if (($playlistlen > 0) && (showingNowPlaying($client))) { - $pdm = ($pdm + 1) % (Slim::Utils::Prefs::clientGet($client,'showbufferfullness') ? 7 : 6); + $pdm = ($pdm + 1) % (Slim::Utils::Prefs::clientGet($client,'showbufferfullness') ? 8 : 7); } elsif ($playlistlen > 0) { browseplaylistindex($client,Slim::Player::Source::currentSongIndex($client)); } } else { - if ($buttonarg =~ /[0-5]$/) { + if ($buttonarg =~ /[0-7]$/) { $pdm = $buttonarg; } } Index: Slim/Player/Player.pm =================================================================== RCS file: /home/cvs/cvsroot/slim/server/Slim/Player/Player.pm,v retrieving revision 1.30 diff -u -p -B -r1.30 Player.pm --- Slim/Player/Player.pm 24 Sep 2004 01:45:20 -0000 1.30 +++ Slim/Player/Player.pm 29 Sep 2004 08:10:50 -0000 @@ -479,7 +479,7 @@ sub nowPlayingModeLines { }; # check if we don't know how long the track is... - if (!$client->songduration() && ($playingDisplayMode != 6)) { + if (!$client->songduration() && ($playingDisplayMode <= 6)) { # no progress bar, remaining time is meaningless $playingDisplayMode = ($playingDisplayMode % 3) ? 1 : 0; @@ -491,6 +491,16 @@ sub nowPlayingModeLines { my $leftLength = $client->measureText($line1, 1); + if ($playingDisplayMode == 7) { + my $time = Slim::Utils::Misc::timeF(); + $fractioncomplete = Slim::Player::Source::progress($client); + my $timeLength = $client->measureText($time,1); + + my $barlen = $client->displayWidth() - $leftLength - $timeLength; + my $bar = $client->progressBar($barlen, $fractioncomplete); + + $overlay = $bar . $time; + } if ( $playingDisplayMode == 6) { if (!Slim::Utils::Prefs::clientGet($client,'showbufferfullness')) { $playingDisplayMode = 1; #sanity check. revert to showing nothign is showbufferfullnes has been turned off.