From a4cf89aa16078e49e9e0d162ae64cc96abf72569 Mon Sep 17 00:00:00 2001 From: Tim Peng Date: Mon, 22 Feb 2021 11:24:21 +0800 Subject: [PATCH] [Fix] Bluetooth device ordering -Caused by sorting whole list -It should sort connected devices, and then, to add all disconnected devices from getMostRecentlyConnectedDevices() Bug: 176850941 Test: atest LocalMediaManagerTest Change-Id: I123e70d0616d3fab0a29658e29421ee94aec3094 --- .../src/com/android/settingslib/media/LocalMediaManager.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java b/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java index 32419f49d8c9c..1f3e0e9fe0384 100644 --- a/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java +++ b/packages/SettingsLib/src/com/android/settingslib/media/LocalMediaManager.java @@ -205,7 +205,6 @@ public class LocalMediaManager implements BluetoothCallback { void dispatchDeviceListUpdate() { final List mediaDevices = new ArrayList<>(mMediaDevices); - Collections.sort(mediaDevices, COMPARATOR); for (DeviceCallback callback : getCallbacks()) { callback.onDeviceListUpdate(mediaDevices); } @@ -472,6 +471,7 @@ public class LocalMediaManager implements BluetoothCallback { synchronized (mMediaDevicesLock) { mMediaDevices.clear(); mMediaDevices.addAll(devices); + Collections.sort(devices, COMPARATOR); // Add disconnected bluetooth devices only when phone output device is available. for (MediaDevice device : devices) { final int type = device.getDeviceType();