Merge "[LE Audio] To enable the broadcast button when media is playing on BT LE device" into tm-qpr-dev am: 85ce4f74db am: 42343eb187
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18868546 Change-Id: Ifcf1824f35c82c7c2561c03301af022a42da235a Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -840,6 +840,10 @@ public class MediaOutputController implements LocalMediaManager.DeviceCallback,
|
||||
|| features.contains(MediaRoute2Info.FEATURE_REMOTE_GROUP_PLAYBACK));
|
||||
}
|
||||
|
||||
boolean isBluetoothLeDevice(@NonNull MediaDevice device) {
|
||||
return device.isBLEDevice();
|
||||
}
|
||||
|
||||
boolean isBroadcastSupported() {
|
||||
LocalBluetoothLeBroadcast broadcast =
|
||||
mLocalBluetoothManager.getProfileManager().getLeAudioBroadcastProfile();
|
||||
|
||||
@@ -99,7 +99,12 @@ public class MediaOutputDialog extends MediaOutputBaseDialog {
|
||||
|
||||
@Override
|
||||
public boolean isBroadcastSupported() {
|
||||
return mMediaOutputController.isBroadcastSupported();
|
||||
boolean isBluetoothLeDevice = false;
|
||||
if (mMediaOutputController.getCurrentConnectedMediaDevice() != null) {
|
||||
isBluetoothLeDevice = mMediaOutputController.isBluetoothLeDevice(
|
||||
mMediaOutputController.getCurrentConnectedMediaDevice());
|
||||
}
|
||||
return mMediaOutputController.isBroadcastSupported() && isBluetoothLeDevice;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -138,15 +138,30 @@ public class MediaOutputDialogTest extends SysuiTestCase {
|
||||
mFeatures.add(MediaRoute2Info.FEATURE_REMOTE_GROUP_PLAYBACK);
|
||||
|
||||
assertThat(mMediaOutputDialog.getStopButtonVisibility()).isEqualTo(View.VISIBLE);
|
||||
}
|
||||
|
||||
mFeatures.clear();
|
||||
@Test
|
||||
public void getStopButtonVisibility_remoteBLEDevice_returnVisible() {
|
||||
when(mLocalBluetoothProfileManager.getLeAudioBroadcastProfile()).thenReturn(
|
||||
mLocalBluetoothLeBroadcast);
|
||||
when(mLocalBluetoothLeBroadcast.isEnabled(any())).thenReturn(false);
|
||||
when(mPlaybackState.getState()).thenReturn(PlaybackState.STATE_PLAYING);
|
||||
when(mMediaDevice.isBLEDevice()).thenReturn(true);
|
||||
|
||||
assertThat(mMediaOutputDialog.getStopButtonVisibility()).isEqualTo(View.VISIBLE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getStopButtonVisibility_remoteNonBLEDevice_returnGone() {
|
||||
when(mLocalBluetoothProfileManager.getLeAudioBroadcastProfile()).thenReturn(
|
||||
mLocalBluetoothLeBroadcast);
|
||||
when(mLocalBluetoothLeBroadcast.isEnabled(any())).thenReturn(false);
|
||||
when(mPlaybackState.getState()).thenReturn(PlaybackState.STATE_PLAYING);
|
||||
when(mMediaDevice.isBLEDevice()).thenReturn(false);
|
||||
|
||||
assertThat(mMediaOutputDialog.getStopButtonVisibility()).isEqualTo(View.GONE);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getStopButtonVisibility_localDevice_returnGone() {
|
||||
mFeatures.add(MediaRoute2Info.FEATURE_LOCAL_PLAYBACK);
|
||||
|
||||
Reference in New Issue
Block a user