diff --git a/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java b/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java index 1d06df08bd3a6..008a433bb7a4c 100644 --- a/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java +++ b/packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java @@ -475,5 +475,10 @@ public class InfoMediaManager extends MediaManager { public void onRequestFailed(int reason) { dispatchOnRequestFailed(reason); } + + @Override + public void onSessionUpdated(RoutingSessionInfo sessionInfo) { + dispatchDataChanged(); + } } } diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaManagerTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaManagerTest.java index 99c568a4707b5..734866f49a533 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaManagerTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaManagerTest.java @@ -624,6 +624,15 @@ public class InfoMediaManagerTest { verify(mCallback).onConnectedDeviceChanged(null); } + @Test + public void onSessionUpdated_shouldDispatchDataChanged() { + mInfoMediaManager.registerCallback(mCallback); + + mInfoMediaManager.mMediaRouterCallback.onSessionUpdated(mock(RoutingSessionInfo.class)); + + verify(mCallback).onDeviceAttributesChanged(); + } + @Test public void addMediaDevice_verifyDeviceTypeCanCorrespondToMediaDevice() { final MediaRoute2Info route2Info = mock(MediaRoute2Info.class);