Merge "Call route selected/unselected callbacks" into sc-dev am: 9f333ab2c8

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14957149

Change-Id: I580341f4dd4bba65f1768d24988097dfe91b2d74
This commit is contained in:
TreeHugger Robot
2021-06-15 09:41:26 +00:00
committed by Automerger Merge Worker

View File

@@ -696,13 +696,17 @@ public class MediaRouter {
@Override
public void onGlobalA2dpChanged(boolean a2dpOn) {
mHandler.post(() -> {
if (mSelectedRoute == null) {
if (mSelectedRoute == null || mBluetoothA2dpRoute == null) {
return;
}
if (mSelectedRoute.isDefault() && a2dpOn) {
setSelectedRoute(mBluetoothA2dpRoute, /*explicit=*/false);
setSelectedRoute(mBluetoothA2dpRoute, /*explicit=*/ false);
dispatchRouteUnselected(ROUTE_TYPE_LIVE_AUDIO, mDefaultAudioVideo);
dispatchRouteSelected(ROUTE_TYPE_LIVE_AUDIO, mBluetoothA2dpRoute);
} else if (mSelectedRoute.isBluetooth() && !a2dpOn) {
setSelectedRoute(mDefaultAudioVideo, /*explicit=*/false);
setSelectedRoute(mDefaultAudioVideo, /*explicit=*/ false);
dispatchRouteUnselected(ROUTE_TYPE_LIVE_AUDIO, mBluetoothA2dpRoute);
dispatchRouteSelected(ROUTE_TYPE_LIVE_AUDIO, mDefaultAudioVideo);
}
});
}
@@ -1363,6 +1367,9 @@ public class MediaRouter {
}
static void dispatchRouteSelected(int type, RouteInfo info) {
if (DEBUG) {
Log.d(TAG, "Dispatching route selected: " + info);
}
for (CallbackInfo cbi : sStatic.mCallbacks) {
if (cbi.filterRouteEvent(info)) {
cbi.cb.onRouteSelected(cbi.router, type, info);
@@ -1371,6 +1378,9 @@ public class MediaRouter {
}
static void dispatchRouteUnselected(int type, RouteInfo info) {
if (DEBUG) {
Log.d(TAG, "Dispatching route unselected: " + info);
}
for (CallbackInfo cbi : sStatic.mCallbacks) {
if (cbi.filterRouteEvent(info)) {
cbi.cb.onRouteUnselected(cbi.router, type, info);