DO NOT MERGE Fix Now Playing toolbar initial state

Bug: 167244976
Test: Manualy
Change-Id: I2530ccac67fd536c0cfc9f6f3f81c75b7faee856
diff --git a/src/com/android/car/media/PlaybackFragment.java b/src/com/android/car/media/PlaybackFragment.java
index 1256ed3..e9edecc 100644
--- a/src/com/android/car/media/PlaybackFragment.java
+++ b/src/com/android/car/media/PlaybackFragment.java
@@ -639,6 +639,9 @@
         mItemAnimator.setSupportsChangeAnimations(false);
         mQueue.setItemAnimator(mItemAnimator);
 
+        // Make sure the AppBar menu reflects the initial state of playback fragment.
+        updateAppBarMenu(mHasQueue, mQueueIsVisible);
+
         getPlaybackViewModel().getQueue().observe(this, this::setQueue);
 
         getPlaybackViewModel().hasQueue().observe(getViewLifecycleOwner(), hasQueue -> {
@@ -691,6 +694,22 @@
         mViewModel.setQueueVisible(updatedQueueVisibility);
     }
 
+    private void updateAppBarMenu(boolean hasQueue, boolean activated) {
+        if (mToolbar == null) {
+            return;
+        }
+        if (hasQueue) {
+            MenuItem queueMenuItem = MenuItem.builder(getContext())
+                    .setIcon(R.drawable.ic_queue_button)
+                    .setActivated(activated)
+                    .setOnClickListener(button -> toggleQueueVisibility())
+                    .build();
+            mToolbar.setMenuItems(Collections.singletonList(queueMenuItem));
+        } else {
+            mToolbar.setMenuItems(Collections.emptyList());
+        }
+    }
+
     private void setQueueState(boolean hasQueue, boolean visible) {
         if (mHasQueue == hasQueue && mQueueIsVisible == visible) {
             return;
@@ -699,18 +718,7 @@
         mHasQueue = hasQueue;
         mQueueIsVisible = visible;
 
-        if (mToolbar != null) {
-            if (mHasQueue) {
-                MenuItem queueMenuItem = MenuItem.builder(getContext())
-                        .setIcon(R.drawable.ic_queue_button)
-                        .setActivated(mQueueIsVisible)
-                        .setOnClickListener(button -> toggleQueueVisibility())
-                        .build();
-                mToolbar.setMenuItems(Collections.singletonList(queueMenuItem));
-            } else {
-                mToolbar.setMenuItems(Collections.emptyList());
-            }
-        }
+        updateAppBarMenu(hasQueue, visible);
 
         if (mQueueIsVisible) {
             ViewUtils.showViewsAnimated(mViewsToShowWhenQueueIsVisible, mFadeDuration);