From 07f5b37173d53cc8ba32af3485b10aee4e5a5f11 Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Sat, 19 Sep 2015 15:11:22 -0700 Subject: Put frequent album list back (accidently removed earlier) --- app/src/main/java/github/daneren2005/dsub/fragments/MainFragment.java | 1 + 1 file changed, 1 insertion(+) (limited to 'app/src') 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 { 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"); -- cgit v1.2.3 From 109c253bd93bc7dffd985cbc2d5959cf471f3944 Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Sat, 19 Sep 2015 15:40:38 -0700 Subject: #550 Add option to shuffle by albums or by songs --- .../java/github/daneren2005/dsub/fragments/SubsonicFragment.java | 7 ++++++- app/src/main/java/github/daneren2005/dsub/util/Constants.java | 1 + app/src/main/res/values/strings.xml | 3 +++ app/src/main/res/xml/settings.xml | 7 +++++++ 4 files changed, 17 insertions(+), 1 deletion(-) (limited to 'app/src') 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(); 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"; diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 453cfdb1..d87dbf69 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -459,6 +459,9 @@ Start when headphones are plugged in. This requires the use of a service which starts on boot up to check for the headphone plug event even when DSub is not running. Color Action Bar Color the action bar and status bar or leave them alone + Shuffle By Album + Shuffle order of albums + Shuffle all songs together Shuffle By Start Year: diff --git a/app/src/main/res/xml/settings.xml b/app/src/main/res/xml/settings.xml index b30d59fd..dec8d928 100644 --- a/app/src/main/res/xml/settings.xml +++ b/app/src/main/res/xml/settings.xml @@ -435,6 +435,13 @@ + +