summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/cyngn/eleven/MusicPlaybackService.java11
-rw-r--r--src/com/cyngn/eleven/ui/fragments/AudioPlayerFragment.java5
2 files changed, 10 insertions, 6 deletions
diff --git a/src/com/cyngn/eleven/MusicPlaybackService.java b/src/com/cyngn/eleven/MusicPlaybackService.java
index 674a3a4..3a202d1 100644
--- a/src/com/cyngn/eleven/MusicPlaybackService.java
+++ b/src/com/cyngn/eleven/MusicPlaybackService.java
@@ -1223,13 +1223,12 @@ public class MusicPlaybackService extends Service {
}
}
- // if we've played each track at least once
- if (minNumPlays > 0) {
- // if we aren't repeating all and we're not forcing a track
- // return no more tracks
- if (mRepeatMode != REPEAT_ALL && !force) {
+ // if we've played each track at least once and all tracks have been played an equal
+ // # of times and we aren't repeating all and we're not forcing a track, then
+ // return no more tracks
+ if (minNumPlays > 0 && numTracksWithMinNumPlays == numTracks
+ && mRepeatMode != REPEAT_ALL && !force) {
return -1;
- }
}
// else pick a track from the least number of played tracks
diff --git a/src/com/cyngn/eleven/ui/fragments/AudioPlayerFragment.java b/src/com/cyngn/eleven/ui/fragments/AudioPlayerFragment.java
index 1a2d966..5fd0ca3 100644
--- a/src/com/cyngn/eleven/ui/fragments/AudioPlayerFragment.java
+++ b/src/com/cyngn/eleven/ui/fragments/AudioPlayerFragment.java
@@ -769,6 +769,11 @@ public class AudioPlayerFragment extends Fragment implements ServiceConnection,
final AudioPlayerFragment audioPlayerFragment = mReference.get();
final String action = intent.getAction();
if (action.equals(MusicPlaybackService.META_CHANGED)) {
+ // if we are repeating current and the track has changed, re-create the adapter
+ if (MusicUtils.getRepeatMode() == MusicPlaybackService.REPEAT_CURRENT) {
+ mReference.get().createAndSetAdapter();
+ }
+
// Current info
audioPlayerFragment.updateNowPlayingInfo();
audioPlayerFragment.dismissPopupMenu();