Loading packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java +20 −5 Original line number Diff line number Diff line Loading @@ -199,6 +199,7 @@ public abstract class InfoMediaManager { private static final String TAG = "InfoMediaManager"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private final Object mLock = new Object(); protected final List<MediaDevice> mMediaDevices = new CopyOnWriteArrayList<>(); @NonNull protected final Context mContext; @NonNull protected final String mPackageName; Loading Loading @@ -358,8 +359,14 @@ public abstract class InfoMediaManager { protected abstract List<MediaRoute2Info> getTransferableRoutes(@NonNull String packageName); protected final void rebuildDeviceList() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { buildAvailableRoutes(); } } else { buildAvailableRoutes(); } } protected final void notifyCurrentConnectedDeviceChanged() { final String id = mCurrentConnectedDevice != null ? mCurrentConnectedDevice.getId() : null; Loading Loading @@ -584,8 +591,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getSelectableMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isSelectable).toList(); } } final RoutingSessionInfo info = getActiveRoutingSession(); Loading @@ -610,8 +619,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getTransferableMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isTransferable).toList(); } } final RoutingSessionInfo info = getActiveRoutingSession(); Loading @@ -636,8 +647,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getDeselectableMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isDeselectable).toList(); } } final RoutingSessionInfo info = getActiveRoutingSession(); Loading @@ -663,8 +676,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getSelectedMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isSelected).toList(); } } RoutingSessionInfo info = getActiveRoutingSession(); Loading packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaManagerTest.java +1 −0 Original line number Diff line number Diff line Loading @@ -640,6 +640,7 @@ public class InfoMediaManagerTest { when(cachedDevice.getName()).thenReturn("BLUETOOTH"); when(cachedDevice.getAddress()).thenReturn("00:00:00:00:00:00"); when(bluetoothRoute.isSystemRoute()).thenReturn(true); when(bluetoothRoute.getName()).thenReturn("BLUETOOTH"); when(bluetoothRoute.getId()).thenReturn(TEST_ID_2); when(bluetoothRoute.getType()).thenReturn(TYPE_BLE_HEADSET); when(bluetoothRoute.getAddress()).thenReturn("00:00:00:00:00:00"); Loading Loading
packages/SettingsLib/src/com/android/settingslib/media/InfoMediaManager.java +20 −5 Original line number Diff line number Diff line Loading @@ -199,6 +199,7 @@ public abstract class InfoMediaManager { private static final String TAG = "InfoMediaManager"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private final Object mLock = new Object(); protected final List<MediaDevice> mMediaDevices = new CopyOnWriteArrayList<>(); @NonNull protected final Context mContext; @NonNull protected final String mPackageName; Loading Loading @@ -358,8 +359,14 @@ public abstract class InfoMediaManager { protected abstract List<MediaRoute2Info> getTransferableRoutes(@NonNull String packageName); protected final void rebuildDeviceList() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { buildAvailableRoutes(); } } else { buildAvailableRoutes(); } } protected final void notifyCurrentConnectedDeviceChanged() { final String id = mCurrentConnectedDevice != null ? mCurrentConnectedDevice.getId() : null; Loading Loading @@ -584,8 +591,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getSelectableMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isSelectable).toList(); } } final RoutingSessionInfo info = getActiveRoutingSession(); Loading @@ -610,8 +619,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getTransferableMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isTransferable).toList(); } } final RoutingSessionInfo info = getActiveRoutingSession(); Loading @@ -636,8 +647,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getDeselectableMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isDeselectable).toList(); } } final RoutingSessionInfo info = getActiveRoutingSession(); Loading @@ -663,8 +676,10 @@ public abstract class InfoMediaManager { @NonNull List<MediaDevice> getSelectedMediaDevices() { if (avoidBinderCallsDuringRender()) { synchronized (mLock) { return mMediaDevices.stream().filter(MediaDevice::isSelected).toList(); } } RoutingSessionInfo info = getActiveRoutingSession(); Loading
packages/SettingsLib/tests/robotests/src/com/android/settingslib/media/InfoMediaManagerTest.java +1 −0 Original line number Diff line number Diff line Loading @@ -640,6 +640,7 @@ public class InfoMediaManagerTest { when(cachedDevice.getName()).thenReturn("BLUETOOTH"); when(cachedDevice.getAddress()).thenReturn("00:00:00:00:00:00"); when(bluetoothRoute.isSystemRoute()).thenReturn(true); when(bluetoothRoute.getName()).thenReturn("BLUETOOTH"); when(bluetoothRoute.getId()).thenReturn(TEST_ID_2); when(bluetoothRoute.getType()).thenReturn(TYPE_BLE_HEADSET); when(bluetoothRoute.getAddress()).thenReturn("00:00:00:00:00:00"); Loading