From e3db9b8941ea75111769bb439d2a4495df5ca958 Mon Sep 17 00:00:00 2001 From: Ze Li Date: Tue, 29 Oct 2024 15:03:44 +0800 Subject: [PATCH] [Connected devices page] Clear up old functions and add logs Test: atest: com.android.settings.connecteddevice.PreviouslyConnectedDevicePreferenceControllerTest Bug: 365044575 Change-Id: Id648be40a4735688bbe1b4779d5812ea93baee2a Flag: EXEMPT refactor --- ...lyConnectedDevicePreferenceController.java | 58 +++---------------- 1 file changed, 9 insertions(+), 49 deletions(-) diff --git a/src/com/android/settings/connecteddevice/PreviouslyConnectedDevicePreferenceController.java b/src/com/android/settings/connecteddevice/PreviouslyConnectedDevicePreferenceController.java index 4423c65e00b..24294b0e328 100644 --- a/src/com/android/settings/connecteddevice/PreviouslyConnectedDevicePreferenceController.java +++ b/src/com/android/settings/connecteddevice/PreviouslyConnectedDevicePreferenceController.java @@ -54,10 +54,8 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); private static final int MAX_DEVICE_NUM = 3; - private static final int DOCK_DEVICE_INDEX = 9; private static final String KEY_SEE_ALL = "previously_connected_devices_see_all"; - private final List mDevicesList = new ArrayList<>(); private final List mDockDevicesList = new ArrayList<>(); private final Map mDevicePreferenceMap = new HashMap<>(); private final BluetoothAdapter mBluetoothAdapter; @@ -118,6 +116,8 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc mContext.registerReceiver(mReceiver, mIntentFilter, Context.RECEIVER_EXPORTED_UNAUDITED); mBluetoothDeviceUpdater.refreshPreference(); + Log.d(TAG, "Updating preference group by onStart on thread " + + Thread.currentThread().getName()); updatePreferenceGroup(); } @@ -146,55 +146,11 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc if (DEBUG) { Log.d(TAG, "onDeviceAdded() " + preference.getTitle()); } + Log.d(TAG, "Updating preference group by onDeviceAdded on thread " + + Thread.currentThread().getName()); updatePreferenceGroup(); } - private void addPreference(int index, Preference preference) { - if (preference instanceof BluetoothDevicePreference) { - if (index >= 0 && mDevicesList.size() >= index) { - mDevicesList.add(index, preference); - } else { - mDevicesList.add(preference); - } - } else { - mDockDevicesList.add(preference); - } - addPreference(); - } - - private void addPreference() { - mPreferenceGroup.removeAll(); - mPreferenceGroup.addPreference(mSeeAllPreference); - final int size = getDeviceListSize(); - for (int i = 0; i < size; i++) { - if (DEBUG) { - Log.d(TAG, "addPreference() add device : " + mDevicesList.get(i).getTitle()); - } - mDevicesList.get(i).setOrder(i); - mPreferenceGroup.addPreference(mDevicesList.get(i)); - } - if (mDockDevicesList.size() > 0) { - for (int i = 0; i < getDockDeviceListSize(MAX_DEVICE_NUM - size); i++) { - if (DEBUG) { - Log.d(TAG, "addPreference() add dock device : " - + mDockDevicesList.get(i).getTitle()); - } - mDockDevicesList.get(i).setOrder(DOCK_DEVICE_INDEX); - mPreferenceGroup.addPreference(mDockDevicesList.get(i)); - } - } - } - - private int getDeviceListSize() { - return mDevicesList.size() >= MAX_DEVICE_NUM - ? MAX_DEVICE_NUM : mDevicesList.size(); - } - - private int getDockDeviceListSize(int availableSize) { - return mDockDevicesList.size() >= availableSize - ? availableSize : mDockDevicesList.size(); - } - @Override public void onDeviceRemoved(Preference preference) { if (preference instanceof BluetoothDevicePreference) { @@ -207,19 +163,22 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc if (DEBUG) { Log.d(TAG, "onDeviceRemoved() " + preference.getTitle()); } + Log.d(TAG, "Updating preference group by onDeviceRemoved on thread " + + Thread.currentThread().getName()); updatePreferenceGroup(); } /** Sort the preferenceGroup by most recently used. */ public void updatePreferenceGroup() { mPreferenceGroup.removeAll(); - mPreferenceGroup.addPreference(mSeeAllPreference); if (mBluetoothAdapter != null && mBluetoothAdapter.isEnabled()) { // Bluetooth is supported int order = 0; for (BluetoothDevice device : mBluetoothAdapter.getMostRecentlyConnectedDevices()) { Preference preference = mDevicePreferenceMap.getOrDefault(device, null); if (preference != null) { + Log.d(TAG, "Adding preference with order " + order + " when there are " + + mPreferenceGroup.getPreferenceCount()); preference.setOrder(order); mPreferenceGroup.addPreference(preference); order += 1; @@ -237,6 +196,7 @@ public class PreviouslyConnectedDevicePreferenceController extends BasePreferenc order += 1; } } + mPreferenceGroup.addPreference(mSeeAllPreference); updatePreferenceVisibility(); }