aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorScott Jackson <daneren2005@gmail.com>2014-03-04 15:29:07 -0800
committerScott Jackson <daneren2005@gmail.com>2014-03-04 15:29:07 -0800
commit6cb9095005aeb1c3c77e7263dc05d5f3757fb252 (patch)
tree7eb8b75d3774c14f5795e1413a94c39833198100 /src
parentc9795f949df7ad3becc89f41b73a616d7c0ee483 (diff)
downloaddsub-6cb9095005aeb1c3c77e7263dc05d5f3757fb252.tar.gz
dsub-6cb9095005aeb1c3c77e7263dc05d5f3757fb252.tar.bz2
dsub-6cb9095005aeb1c3c77e7263dc05d5f3757fb252.zip
#303 Add Show Artist to Now Playing
Diffstat (limited to 'src')
-rw-r--r--src/github/daneren2005/dsub/activity/SubsonicFragmentActivity.java11
-rw-r--r--src/github/daneren2005/dsub/fragments/DownloadFragment.java41
2 files changed, 25 insertions, 27 deletions
diff --git a/src/github/daneren2005/dsub/activity/SubsonicFragmentActivity.java b/src/github/daneren2005/dsub/activity/SubsonicFragmentActivity.java
index 5aee380f..406a2a95 100644
--- a/src/github/daneren2005/dsub/activity/SubsonicFragmentActivity.java
+++ b/src/github/daneren2005/dsub/activity/SubsonicFragmentActivity.java
@@ -266,17 +266,6 @@ public class SubsonicFragmentActivity extends SubsonicActivity {
};
if(getIntent().hasExtra(Constants.INTENT_EXTRA_VIEW_ALBUM)) {
- if(getIntent().hasExtra(Constants.INTENT_EXTRA_NAME_PARENT_ID)) {
- SelectDirectoryFragment fragment = new SelectDirectoryFragment();
- Bundle args = new Bundle();
- args.putString(Constants.INTENT_EXTRA_NAME_ID, getIntent().getStringExtra(Constants.INTENT_EXTRA_NAME_PARENT_ID));
- args.putString(Constants.INTENT_EXTRA_NAME_NAME, getIntent().getStringExtra(Constants.INTENT_EXTRA_NAME_PARENT_NAME));
- args.putBoolean(Constants.INTENT_EXTRA_NAME_ARTIST, true);
- fragment.setArguments(args);
-
- replaceFragment(fragment, currentFragment.getSupportTag());
- }
-
SubsonicFragment fragment = new SelectDirectoryFragment();
Bundle args = new Bundle();
args.putString(Constants.INTENT_EXTRA_NAME_ID, getIntent().getStringExtra(Constants.INTENT_EXTRA_NAME_ID));
diff --git a/src/github/daneren2005/dsub/fragments/DownloadFragment.java b/src/github/daneren2005/dsub/fragments/DownloadFragment.java
index d9091b55..36a58f66 100644
--- a/src/github/daneren2005/dsub/fragments/DownloadFragment.java
+++ b/src/github/daneren2005/dsub/fragments/DownloadFragment.java
@@ -540,6 +540,9 @@ public class DownloadFragment extends SubsonicFragment implements OnGestureListe
if (downloadFile.getSong().getParent() == null) {
menu.findItem(R.id.menu_show_album).setVisible(false);
}
+ if (downloadFile.getSong().getGrandParent() == null) {
+ menu.findItem(R.id.menu_show_artist).setVisible(false);
+ }
}
}
@@ -556,27 +559,33 @@ public class DownloadFragment extends SubsonicFragment implements OnGestureListe
private boolean menuItemSelected(int menuItemId, final DownloadFile song) {
switch (menuItemId) {
- case R.id.menu_show_album:
+ case R.id.menu_show_album: case R.id.menu_show_artist:
MusicDirectory.Entry entry = song.getSong();
-
+
Intent intent = new Intent(context, SubsonicFragmentActivity.class);
intent.putExtra(Constants.INTENT_EXTRA_VIEW_ALBUM, true);
- if(Util.isTagBrowsing(context)) {
- intent.putExtra(Constants.INTENT_EXTRA_NAME_ID, entry.getAlbumId());
+ String id;
+ String name;
+ if(menuItemId == R.id.menu_show_album) {
+ if(Util.isTagBrowsing(context)) {
+ id = entry.getAlbumId();
+ } else {
+ id = entry.getParent();
+ }
+ name = entry.getAlbum();
} else {
- intent.putExtra(Constants.INTENT_EXTRA_NAME_ID, entry.getParent());
+ if(Util.isTagBrowsing(context)) {
+ id = entry.getArtistId();
+ } else {
+ id = entry.getGrandParent();
+ }
+ name = entry.getArtist();
+ intent.putExtra(Constants.INTENT_EXTRA_NAME_ARTIST, true);
}
- intent.putExtra(Constants.INTENT_EXTRA_NAME_NAME, entry.getAlbum());
+ intent.putExtra(Constants.INTENT_EXTRA_NAME_ID, id);
+ intent.putExtra(Constants.INTENT_EXTRA_NAME_NAME, name);
intent.putExtra(Constants.INTENT_EXTRA_FRAGMENT_TYPE, "Artist");
-
- if(entry.getGrandParent() != null) {
- intent.putExtra(Constants.INTENT_EXTRA_NAME_PARENT_ID, entry.getGrandParent());
- intent.putExtra(Constants.INTENT_EXTRA_NAME_PARENT_NAME, entry.getArtist());
- } else if(Util.isTagBrowsing(context)) {
- intent.putExtra(Constants.INTENT_EXTRA_NAME_PARENT_ID, entry.getArtistId());
- intent.putExtra(Constants.INTENT_EXTRA_NAME_PARENT_NAME, entry.getArtist());
- }
-
+
if(Util.isOffline(context)) {
try {
// This should only be succesful if this is a online song in offline mode
@@ -592,7 +601,7 @@ public class DownloadFragment extends SubsonicFragment implements OnGestureListe
// Do nothing, entry.getParent() is fine
}
}
-
+
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Util.startActivityWithoutTransition(context, intent);
return true;