diff options
author | Scott Jackson <daneren2005@gmail.com> | 2015-09-21 08:58:44 -0700 |
---|---|---|
committer | Scott Jackson <daneren2005@gmail.com> | 2015-09-21 08:58:44 -0700 |
commit | 0ac48e7334a0ffd43bd732dec7ba8e9f3d24528d (patch) | |
tree | a7d582fe7fabc74d028b77145bec7b9f24f93c46 /app/src/main/java | |
parent | 8d81c6f44330ec931736f6696fa39dea974a1b13 (diff) | |
parent | 109c253bd93bc7dffd985cbc2d5959cf471f3944 (diff) | |
download | dsub-0ac48e7334a0ffd43bd732dec7ba8e9f3d24528d.tar.gz dsub-0ac48e7334a0ffd43bd732dec7ba8e9f3d24528d.tar.bz2 dsub-0ac48e7334a0ffd43bd732dec7ba8e9f3d24528d.zip |
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'app/src/main/java')
3 files changed, 8 insertions, 1 deletions
diff --git a/app/src/main/java/github/daneren2005/dsub/fragments/MainFragment.java b/app/src/main/java/github/daneren2005/dsub/fragments/MainFragment.java index 605ab79e..ea894485 100644 --- a/app/src/main/java/github/daneren2005/dsub/fragments/MainFragment.java +++ b/app/src/main/java/github/daneren2005/dsub/fragments/MainFragment.java @@ -113,6 +113,7 @@ public class MainFragment extends SelectRecyclerFragment<Integer> { albums.add(R.string.main_albums_genres); albums.add(R.string.main_albums_year); albums.add(R.string.main_albums_recent); + albums.add(R.string.main_albums_frequent); sections.add(albums); headers.add("albums"); diff --git a/app/src/main/java/github/daneren2005/dsub/fragments/SubsonicFragment.java b/app/src/main/java/github/daneren2005/dsub/fragments/SubsonicFragment.java index fc619001..0a822483 100644 --- a/app/src/main/java/github/daneren2005/dsub/fragments/SubsonicFragment.java +++ b/app/src/main/java/github/daneren2005/dsub/fragments/SubsonicFragment.java @@ -897,13 +897,18 @@ public class SubsonicFragment extends Fragment implements SwipeRefreshLayout.OnR root = musicService.getPlaylist(true, id, name, context, this); } - if(shuffle) { + boolean shuffleByAlbum = Util.getPreferences(context).getBoolean(Constants.PREFERENCES_KEY_SHUFFLE_BY_ALBUM, true); + if(shuffle && shuffleByAlbum) { Collections.shuffle(root.getChildren()); } songs = new LinkedList<Entry>(); getSongsRecursively(root, songs); + if(shuffle && !shuffleByAlbum) { + Collections.shuffle(songs); + } + DownloadService downloadService = getDownloadService(); boolean transition = false; if (!songs.isEmpty() && downloadService != null) { diff --git a/app/src/main/java/github/daneren2005/dsub/util/Constants.java b/app/src/main/java/github/daneren2005/dsub/util/Constants.java index e9e668f7..cc02b709 100644 --- a/app/src/main/java/github/daneren2005/dsub/util/Constants.java +++ b/app/src/main/java/github/daneren2005/dsub/util/Constants.java @@ -160,6 +160,7 @@ public final class Constants { public static final String PREFERENCES_KEY_FIRST_LEVEL_ARTIST = "firstLevelArtist"; public static final String PREFERENCES_KEY_START_ON_HEADPHONES = "startOnHeadphones"; public static final String PREFERENCES_KEY_COLOR_ACTION_BAR = "colorActionBar"; + public static final String PREFERENCES_KEY_SHUFFLE_BY_ALBUM = "shuffleByAlbum"; public static final String OFFLINE_SCROBBLE_COUNT = "scrobbleCount"; public static final String OFFLINE_SCROBBLE_ID = "scrobbleID"; |