Fix some bugs when no music is present.
diff --git a/src/com/android/music/AlbumBrowserActivity.java b/src/com/android/music/AlbumBrowserActivity.java
index fa6eeb4..bfa683e 100644
--- a/src/com/android/music/AlbumBrowserActivity.java
+++ b/src/com/android/music/AlbumBrowserActivity.java
@@ -154,8 +154,10 @@
@Override
public void onDestroy() {
ListView lv = getListView();
- mLastListPosCourse = lv.getFirstVisiblePosition();
- mLastListPosFine = lv.getChildAt(0).getTop();
+ if (lv != null) {
+ mLastListPosCourse = lv.getFirstVisiblePosition();
+ mLastListPosFine = lv.getChildAt(0).getTop();
+ }
MusicUtils.unbindFromService(this);
if (!mAdapterSent) {
Cursor c = mAdapter.getCursor();
@@ -239,6 +241,7 @@
}
MusicUtils.hideDatabaseError(this);
+ MusicUtils.updateButtonBar(this, R.id.albumtab);
setTitle();
}
diff --git a/src/com/android/music/ArtistAlbumBrowserActivity.java b/src/com/android/music/ArtistAlbumBrowserActivity.java
index cc793df..46afeda 100644
--- a/src/com/android/music/ArtistAlbumBrowserActivity.java
+++ b/src/com/android/music/ArtistAlbumBrowserActivity.java
@@ -160,8 +160,10 @@
@Override
public void onDestroy() {
ExpandableListView lv = getExpandableListView();
- mLastListPosCourse = lv.getFirstVisiblePosition();
- mLastListPosFine = lv.getChildAt(0).getTop();
+ if (lv != null) {
+ mLastListPosCourse = lv.getFirstVisiblePosition();
+ mLastListPosFine = lv.getChildAt(0).getTop();
+ }
MusicUtils.unbindFromService(this);
if (!mAdapterSent) {
@@ -248,6 +250,7 @@
}
MusicUtils.hideDatabaseError(this);
+ MusicUtils.updateButtonBar(this, R.id.artisttab);
setTitle();
}
diff --git a/src/com/android/music/MusicUtils.java b/src/com/android/music/MusicUtils.java
index 1acadea..2108b8d 100644
--- a/src/com/android/music/MusicUtils.java
+++ b/src/com/android/music/MusicUtils.java
@@ -636,6 +636,10 @@
if (v != null) {
v.setVisibility(View.GONE);
}
+ v = a.findViewById(R.id.buttonbar);
+ if (v != null) {
+ v.setVisibility(View.GONE);
+ }
TextView tv = (TextView) a.findViewById(R.id.sd_message);
tv.setText(message);
}
diff --git a/src/com/android/music/PlaylistBrowserActivity.java b/src/com/android/music/PlaylistBrowserActivity.java
index fb719b2..edd8d4f 100644
--- a/src/com/android/music/PlaylistBrowserActivity.java
+++ b/src/com/android/music/PlaylistBrowserActivity.java
@@ -175,8 +175,10 @@
@Override
public void onDestroy() {
ListView lv = getListView();
- mLastListPosCourse = lv.getFirstVisiblePosition();
- mLastListPosFine = lv.getChildAt(0).getTop();
+ if (lv != null) {
+ mLastListPosCourse = lv.getFirstVisiblePosition();
+ mLastListPosFine = lv.getChildAt(0).getTop();
+ }
MusicUtils.unbindFromService(this);
if (!mAdapterSent) {
Cursor c = mAdapter.getCursor();
@@ -241,6 +243,7 @@
mLastListPosCourse = -1;
}
MusicUtils.hideDatabaseError(this);
+ MusicUtils.updateButtonBar(this, R.id.playlisttab);
setTitle();
}
diff --git a/src/com/android/music/TrackBrowserActivity.java b/src/com/android/music/TrackBrowserActivity.java
index 52559cf..53fc34d 100644
--- a/src/com/android/music/TrackBrowserActivity.java
+++ b/src/com/android/music/TrackBrowserActivity.java
@@ -234,8 +234,10 @@
@Override
public void onDestroy() {
ListView lv = getListView();
- mLastListPosCourse = lv.getFirstVisiblePosition();
- mLastListPosFine = lv.getChildAt(0).getTop();
+ if (lv != null) {
+ mLastListPosCourse = lv.getFirstVisiblePosition();
+ mLastListPosFine = lv.getChildAt(0).getTop();
+ }
MusicUtils.unbindFromService(this);
try {
if ("nowplaying".equals(mPlaylist)) {
@@ -360,6 +362,7 @@
}
MusicUtils.hideDatabaseError(this);
+ MusicUtils.updateButtonBar(this, R.id.songtab);
setTitle();
// When showing the queue, position the selection on the currently playing track