[Output Switcher] Update stop button text
update stop button text and null check for muting expected device.
Bug: 272787441
Bug: 274631614
Test: atest MediaOutputAdapterTest MediaOutputControllerTest MediaOutputBaseDialogTest MediaOutputDialogTest
Change-Id: Idd9680f42bbb9651dea3dc8850a0f425bcba569b
diff --git a/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java b/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java
index 7458f010..cff6435 100644
--- a/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java
+++ b/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java
@@ -22,6 +22,7 @@
import android.bluetooth.BluetoothDevice;
import android.content.Context;
import android.graphics.drawable.Drawable;
+import android.media.AudioDeviceAttributes;
import android.media.AudioManager;
import android.media.RoutingSessionInfo;
import android.os.Build;
@@ -592,9 +593,11 @@
}
private boolean isMutingExpectedDevice(CachedBluetoothDevice cachedDevice) {
- return mAudioManager.getMutingExpectedDevice() != null
- && cachedDevice.getAddress().equals(
- mAudioManager.getMutingExpectedDevice().getAddress());
+ AudioDeviceAttributes mutingExpectedDevice = mAudioManager.getMutingExpectedDevice();
+ if (mutingExpectedDevice == null || cachedDevice == null) {
+ return false;
+ }
+ return cachedDevice.getAddress().equals(mutingExpectedDevice.getAddress());
}
private List<MediaDevice> buildDisconnectedBluetoothDevice() {
diff --git a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialog.java b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialog.java
index fbd0079..cb6f5a7 100644
--- a/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialog.java
+++ b/packages/SystemUI/src/com/android/systemui/media/dialog/MediaOutputDialog.java
@@ -108,7 +108,7 @@
@Override
public CharSequence getStopButtonText() {
- int resId = R.string.keyboard_key_media_stop;
+ int resId = R.string.media_output_dialog_button_stop_casting;
if (isBroadcastSupported() && mMediaOutputController.isPlaying()
&& !mMediaOutputController.isBluetoothLeBroadcastEnabled()) {
resId = R.string.media_output_broadcast;
diff --git a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java
index 31866a8..b02fdf4 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/media/dialog/MediaOutputDialogTest.java
@@ -247,7 +247,8 @@
@Test
public void getStopButtonText_notSupportsBroadcast_returnsDefaultText() {
- String stopText = mContext.getText(R.string.keyboard_key_media_stop).toString();
+ String stopText = mContext.getText(
+ R.string.media_output_dialog_button_stop_casting).toString();
MediaOutputController mockMediaOutputController = mock(MediaOutputController.class);
when(mockMediaOutputController.isBroadcastSupported()).thenReturn(false);