Merge "DO NOT MERGE: Revert "Reset app routes when global a2dp state changed"" into sc-qpr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
ea6121206f
@@ -23,5 +23,4 @@ oneway interface IMediaRouterClient {
|
|||||||
void onStateChanged();
|
void onStateChanged();
|
||||||
void onRestoreRoute();
|
void onRestoreRoute();
|
||||||
void onGroupRouteSelected(String routeId);
|
void onGroupRouteSelected(String routeId);
|
||||||
void onGlobalA2dpChanged(boolean a2dpOn);
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -654,9 +654,12 @@ public class MediaRouter {
|
|||||||
final class Client extends IMediaRouterClient.Stub {
|
final class Client extends IMediaRouterClient.Stub {
|
||||||
@Override
|
@Override
|
||||||
public void onStateChanged() {
|
public void onStateChanged() {
|
||||||
mHandler.post(() -> {
|
mHandler.post(new Runnable() {
|
||||||
if (Client.this == mClient) {
|
@Override
|
||||||
updateClientState();
|
public void run() {
|
||||||
|
if (Client.this == mClient) {
|
||||||
|
updateClientState();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -690,22 +693,6 @@ public class MediaRouter {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Called when the selection of a connected device (phone speaker or BT devices)
|
|
||||||
// is changed.
|
|
||||||
@Override
|
|
||||||
public void onGlobalA2dpChanged(boolean a2dpOn) {
|
|
||||||
mHandler.post(() -> {
|
|
||||||
if (mSelectedRoute == null) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (mSelectedRoute.isDefault() && a2dpOn) {
|
|
||||||
setSelectedRoute(mBluetoothA2dpRoute, /*explicit=*/false);
|
|
||||||
} else if (mSelectedRoute.isBluetooth() && !a2dpOn) {
|
|
||||||
setSelectedRoute(mDefaultAudioVideo, /*explicit=*/false);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -903,26 +903,8 @@ public final class MediaRouterService extends IMediaRouterService.Stub
|
|||||||
if (intent.getAction().equals(BluetoothA2dp.ACTION_ACTIVE_DEVICE_CHANGED)) {
|
if (intent.getAction().equals(BluetoothA2dp.ACTION_ACTIVE_DEVICE_CHANGED)) {
|
||||||
BluetoothDevice btDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
|
BluetoothDevice btDevice = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
|
||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
boolean wasA2dpOn = mGlobalBluetoothA2dpOn;
|
|
||||||
mActiveBluetoothDevice = btDevice;
|
mActiveBluetoothDevice = btDevice;
|
||||||
mGlobalBluetoothA2dpOn = btDevice != null;
|
mGlobalBluetoothA2dpOn = btDevice != null;
|
||||||
if (wasA2dpOn != mGlobalBluetoothA2dpOn) {
|
|
||||||
Slog.d(TAG, "GlobalBluetoothA2dpOn is changed to '"
|
|
||||||
+ mGlobalBluetoothA2dpOn + "'");
|
|
||||||
UserRecord userRecord = mUserRecords.get(mCurrentUserId);
|
|
||||||
if (userRecord != null) {
|
|
||||||
for (ClientRecord cr : userRecord.mClientRecords) {
|
|
||||||
// mSelectedRouteId will be null for BT and phone speaker.
|
|
||||||
if (cr.mSelectedRouteId == null) {
|
|
||||||
try {
|
|
||||||
cr.mClient.onGlobalA2dpChanged(mGlobalBluetoothA2dpOn);
|
|
||||||
} catch (RemoteException e) {
|
|
||||||
// Ignore exception
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user