summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYimin Li <ymli@google.com>2022-04-26 11:30:51 -0700
committerYimin Li <ymli@google.com>2022-04-26 11:30:51 -0700
commita1cf3f50aa1b2237a731733805604f05d4548942 (patch)
treee312304a4a955e1835e1faa3a8590a86524178be
parentf5edf5a698561402261d7f1a254a6de05d758514 (diff)
parent3bf98c54fa00af3788192a01399009c0b69dc17b (diff)
downloadMedia-a1cf3f50aa1b2237a731733805604f05d4548942.tar.gz
Merge commit '3bf98c54fa00af3788192a01399009c0b69dc17b' of sso://googleplex-android/platform/packages/apps/Car/Media into HEAD
Change-Id: If9712431931c53ff9a67274c543e009e2b720d9b
-rw-r--r--src/com/android/car/media/MediaActivity.java4
-rw-r--r--src/com/android/car/media/MediaActivityController.java9
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