From 17e3e457c8d46de8b7cbd58d0213ad0469d0f121 Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Sun, 7 Mar 2010 21:32:40 +0100 Subject: [PATCH] Only shuffle first time with random unless repeat is on --- mopidy/backends/__init__.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/mopidy/backends/__init__.py b/mopidy/backends/__init__.py index ddc7e3d2..e50832b1 100644 --- a/mopidy/backends/__init__.py +++ b/mopidy/backends/__init__.py @@ -102,6 +102,7 @@ class BasePlaybackController(object): self.backend = backend self.current_track = None self._shuffled = [] + self._first_shuffle = True def play(self, id=None, position=None): raise NotImplementedError @@ -149,8 +150,10 @@ class BasePlaybackController(object): return None if self.random and not self._shuffled: - self._shuffled = playlist.tracks - random.shuffle(self._shuffled) + if self.repeat or self._first_shuffle: + self._shuffled = playlist.tracks + random.shuffle(self._shuffled) + self._first_shuffle = self.repeat if self._shuffled: return self._shuffled[0]