From 990c6a5c2b2b4efd8b118d47b0f88d300500654a Mon Sep 17 00:00:00 2001 From: Eugene Cheung Date: Tue, 13 Jun 2017 11:02:55 -0400 Subject: [PATCH] Add actions to artist details activity --- .../ui/activities/ArtistDetailActivity.java | 16 +++++++++++++++- app/src/main/res/menu/menu_artist_detail.xml | 15 +++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java index 1c235784..66b83730 100644 --- a/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java +++ b/app/src/main/java/com/kabouzeid/gramophone/ui/activities/ArtistDetailActivity.java @@ -34,6 +34,7 @@ import com.kabouzeid.appthemehelper.util.MaterialValueHelper; import com.kabouzeid.gramophone.R; import com.kabouzeid.gramophone.adapter.album.HorizontalAlbumAdapter; import com.kabouzeid.gramophone.adapter.song.ArtistSongAdapter; +import com.kabouzeid.gramophone.dialogs.AddToPlaylistDialog; import com.kabouzeid.gramophone.dialogs.SleepTimerDialog; import com.kabouzeid.gramophone.glide.PhonographColoredTarget; import com.kabouzeid.gramophone.glide.artistimage.ArtistImage; @@ -49,6 +50,7 @@ import com.kabouzeid.gramophone.loader.ArtistLoader; import com.kabouzeid.gramophone.misc.SimpleObservableScrollViewCallbacks; import com.kabouzeid.gramophone.misc.WrappedAsyncTaskLoader; import com.kabouzeid.gramophone.model.Artist; +import com.kabouzeid.gramophone.model.Song; import com.kabouzeid.gramophone.ui.activities.base.AbsSlidingMusicPanelActivity; import com.kabouzeid.gramophone.util.ArtistSignatureUtil; import com.kabouzeid.gramophone.util.NavigationUtil; @@ -57,6 +59,8 @@ import com.kabouzeid.gramophone.util.PreferenceUtil; import com.kabouzeid.gramophone.util.Util; import com.kabouzeid.gramophone.util.ViewUtil; +import java.util.ArrayList; + import butterknife.BindView; import butterknife.ButterKnife; import retrofit2.Call; @@ -329,6 +333,7 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement @Override public boolean onOptionsItemSelected(@NonNull MenuItem item) { int id = item.getItemId(); + final ArrayList songs = songAdapter.getDataSet(); switch (id) { case R.id.action_sleep_timer: new SleepTimerDialog().show(getSupportFragmentManager(), "SET_SLEEP_TIMER"); @@ -337,7 +342,16 @@ public class ArtistDetailActivity extends AbsSlidingMusicPanelActivity implement NavigationUtil.openEqualizer(this); return true; case R.id.action_shuffle_artist: - MusicPlayerRemote.openAndShuffleQueue(songAdapter.getDataSet(), true); + MusicPlayerRemote.openAndShuffleQueue(songs, true); + return true; + case R.id.action_play_next: + MusicPlayerRemote.playNext(songs); + return true; + case R.id.action_add_to_current_playing: + MusicPlayerRemote.enqueue(songs); + return true; + case R.id.action_add_to_playlist: + AddToPlaylistDialog.create(songs).show(getSupportFragmentManager(), "ADD_PLAYLIST"); return true; case android.R.id.home: super.onBackPressed(); diff --git a/app/src/main/res/menu/menu_artist_detail.xml b/app/src/main/res/menu/menu_artist_detail.xml index 3d6a9fcf..f507d0f6 100644 --- a/app/src/main/res/menu/menu_artist_detail.xml +++ b/app/src/main/res/menu/menu_artist_detail.xml @@ -9,6 +9,21 @@ android:title="@string/action_shuffle_artist" app:showAsAction="ifRoom" /> + + + + + +