diff options
Diffstat (limited to 'src/com/android/car/media/drawer/MediaDrawerAdapter.java')
-rw-r--r-- | src/com/android/car/media/drawer/MediaDrawerAdapter.java | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/com/android/car/media/drawer/MediaDrawerAdapter.java b/src/com/android/car/media/drawer/MediaDrawerAdapter.java index acf816e..c1f5e07 100644 --- a/src/com/android/car/media/drawer/MediaDrawerAdapter.java +++ b/src/com/android/car/media/drawer/MediaDrawerAdapter.java @@ -72,16 +72,15 @@ class MediaDrawerAdapter extends CarDrawerAdapter { */ void setFetcherAndInvoke(MediaItemsFetcher fetcher) { setFetcher(fetcher); - mCurrentFetcher.start(() -> { - if (mFetchCallback != null) { - mFetchCallback.onFetchEnd(); - } - notifyDataSetChanged(); - }); if (mFetchCallback != null) { mFetchCallback.onFetchStart(); } + + mCurrentFetcher.start(() -> { + closeFetch(); + notifyDataSetChanged(); + }); } void setFetcher(MediaItemsFetcher fetcher) { @@ -89,6 +88,7 @@ class MediaDrawerAdapter extends CarDrawerAdapter { mCurrentFetcher.cleanup(); } mCurrentFetcher = fetcher; + notifyDataSetChanged(); } @Override @@ -124,8 +124,16 @@ class MediaDrawerAdapter extends CarDrawerAdapter { if (mCurrentFetcher != null) { mCurrentFetcher.cleanup(); mCurrentFetcher = null; + notifyDataSetChanged(); + } + closeFetch(); + } + + private void closeFetch() { + if (mFetchCallback != null) { + mFetchCallback.onFetchEnd(); + mFetchCallback = null; } - mFetchCallback = null; } public void scrollToCurrent() { |