diff options
author | Xin Li <delphij@google.com> | 2022-06-14 16:48:13 -0700 |
---|---|---|
committer | Xin Li <delphij@google.com> | 2022-06-14 16:48:13 -0700 |
commit | 8666e534a0b568d6647a7f5c518975213519628a (patch) | |
tree | e312304a4a955e1835e1faa3a8590a86524178be | |
parent | 3a7335815745ea79264872db68299c0923d811d7 (diff) | |
parent | 14d20dbada4aeca56b8d6fd398d02c5d9b04dc6b (diff) | |
download | Media-main.tar.gz |
Bug: 236045730
Merged-In: I6c4077c0b40dcd8f975e59dca4f3693820ec4fac
Change-Id: I38858b525ddf81f3a3e38578660dd37d28c383ab
-rw-r--r-- | src/com/android/car/media/MediaActivity.java | 4 | ||||
-rw-r--r-- | src/com/android/car/media/MediaActivityController.java | 9 |
2 files changed, 5 insertions, 8 deletions
diff --git a/src/com/android/car/media/MediaActivity.java b/src/com/android/car/media/MediaActivity.java index b437a1a..591285a 100644 --- a/src/com/android/car/media/MediaActivity.java +++ b/src/com/android/car/media/MediaActivity.java @@ -426,10 +426,6 @@ public class MediaActivity extends FragmentActivity implements MediaActivityCont break; case BROWSING: if (oldMode == Mode.PLAYBACK) { - // When switching from PLAYBACK mode to BROWSING mode, if a CarUiRecyclerView - // shows up and it's in rotary mode, restore focus in the CarUiRecyclerView. - mMediaActivityController.restoreFocusInCurrentNode(); - ViewUtils.hideViewAnimated(mErrorContainer, 0); ViewUtils.showViewAnimated(mBrowseContainer, 0); animateOutPlaybackContainer(fadeOutDuration); diff --git a/src/com/android/car/media/MediaActivityController.java b/src/com/android/car/media/MediaActivityController.java index a29b40d..9882e70 100644 --- a/src/com/android/car/media/MediaActivityController.java +++ b/src/com/android/car/media/MediaActivityController.java @@ -406,6 +406,7 @@ public class MediaActivityController extends ViewControllerBase { updateAppBar(); } + @NonNull private BrowseViewController getControllerForItem(@NonNull MediaItemMetadata item) { BrowseViewController controller = mBrowseViewControllersByNode.get(item); if (controller == null) { @@ -438,15 +439,15 @@ public class MediaActivityController extends ViewControllerBase { } // If the current node has a CarUiRecyclerView and it's in rotary mode, restore focus in it. - void restoreFocusInCurrentNode() { + // Should remain private and definitely NOT be called from MediaActivity#changeModeInternal + // as the controller isn't ready to show the browse data of the new media source (it hasn't + // connected to it (b/217159531). + private void restoreFocusInCurrentNode() { MediaItemMetadata currentNode = getCurrentMediaItem(); if (currentNode == null) { return; } BrowseViewController controller = getControllerForItem(currentNode); - if (controller == null) { - return; - } CarUiRecyclerView carUiRecyclerView = controller.getContent().findViewById(R.id.browse_list); if (carUiRecyclerView != null && carUiRecyclerView instanceof LazyLayoutView |