From 89e930d24fd4303058c680b1fb45098644b086ff Mon Sep 17 00:00:00 2001 From: daneren2005 Date: Tue, 19 Nov 2013 16:53:24 -0800 Subject: #164 Started adding support for autoplaying albums/artists --- src/github/daneren2005/dsub/fragments/SearchFragment.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/github/daneren2005/dsub/fragments/SearchFragment.java b/src/github/daneren2005/dsub/fragments/SearchFragment.java index 900872da..81d2f29f 100644 --- a/src/github/daneren2005/dsub/fragments/SearchFragment.java +++ b/src/github/daneren2005/dsub/fragments/SearchFragment.java @@ -108,7 +108,7 @@ public class SearchFragment extends SubsonicFragment { } else { Object item = parent.getItemAtPosition(position); if (item instanceof Artist) { - onArtistSelected((Artist) item); + onArtistSelected((Artist) item, false); } else if (item instanceof MusicDirectory.Entry) { MusicDirectory.Entry entry = (MusicDirectory.Entry) item; if (entry.isDirectory()) { @@ -208,7 +208,7 @@ public class SearchFragment extends SubsonicFragment { searchResult = result; populateList(); if (autoplay) { - autoplay(); + autoplay(query); } } @@ -289,11 +289,14 @@ public class SearchFragment extends SubsonicFragment { mergeAdapter.notifyDataSetChanged(); } - private void onArtistSelected(Artist artist) { + private void onArtistSelected(Artist artist, boolean autoplay) { SubsonicFragment fragment = new SelectDirectoryFragment(); Bundle args = new Bundle(); args.putString(Constants.INTENT_EXTRA_NAME_ID, artist.getId()); args.putString(Constants.INTENT_EXTRA_NAME_NAME, artist.getName()); + if(autoplay) { + args.putBoolean(Constants.INTENT_EXTRA_NAME_AUTOPLAY, true); + } fragment.setArguments(args); replaceFragment(fragment, R.id.fragment_list_layout); @@ -317,6 +320,9 @@ public class SearchFragment extends SubsonicFragment { args = new Bundle(); args.putString(Constants.INTENT_EXTRA_NAME_ID, album.getId()); args.putString(Constants.INTENT_EXTRA_NAME_NAME, album.getTitle()); + if(autoplay) { + args.putBoolean(Constants.INTENT_EXTRA_NAME_AUTOPLAY, true); + } fragment.setArguments(args); replaceFragment(fragment, id); @@ -345,7 +351,7 @@ public class SearchFragment extends SubsonicFragment { startActivity(intent); } - private void autoplay() { + private void autoplay(String query) { if (!searchResult.getSongs().isEmpty()) { onSongSelected(searchResult.getSongs().get(0), false, false, true, false); } else if (!searchResult.getAlbums().isEmpty()) { -- cgit v1.2.3