Loading src/com/android/settings/bluetooth/BluetoothDevicePreference.java +3 −1 Original line number Diff line number Diff line Loading @@ -60,10 +60,12 @@ public final class BluetoothDevicePreference extends GearPreference implements @Retention(RetentionPolicy.SOURCE) @IntDef({SortType.TYPE_DEFAULT, SortType.TYPE_FIFO}) SortType.TYPE_FIFO, SortType.TYPE_NO_SORT}) public @interface SortType { int TYPE_DEFAULT = 1; int TYPE_FIFO = 2; int TYPE_NO_SORT = 3; } private final CachedBluetoothDevice mCachedDevice; Loading src/com/android/settings/bluetooth/BluetoothDeviceUpdater.java +10 −1 Original line number Diff line number Diff line Loading @@ -232,12 +232,21 @@ public abstract class BluetoothDeviceUpdater implements BluetoothCallback, * Add the {@link Preference} that represents the {@code cachedDevice} */ protected void addPreference(CachedBluetoothDevice cachedDevice) { addPreference(cachedDevice, BluetoothDevicePreference.SortType.TYPE_DEFAULT); } /** * Add the {@link Preference} with {@link BluetoothDevicePreference.SortType} that * represents the {@code cachedDevice} */ protected void addPreference(CachedBluetoothDevice cachedDevice, @BluetoothDevicePreference.SortType int type) { final BluetoothDevice device = cachedDevice.getDevice(); if (!mPreferenceMap.containsKey(device)) { BluetoothDevicePreference btPreference = new BluetoothDevicePreference(mPrefContext, cachedDevice, true /* showDeviceWithoutNames */, BluetoothDevicePreference.SortType.TYPE_DEFAULT); type); btPreference.setKey(getPreferenceKey()); btPreference.setOnGearClickListener(mDeviceProfilesListener); if (this instanceof Preference.OnPreferenceClickListener) { Loading src/com/android/settings/bluetooth/SavedBluetoothDeviceUpdater.java +22 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ */ package com.android.settings.bluetooth; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.content.Context; import android.util.Log; Loading @@ -24,6 +25,7 @@ import androidx.preference.Preference; import com.android.settings.connecteddevice.DevicePreferenceCallback; import com.android.settings.dashboard.DashboardFragment; import com.android.settingslib.bluetooth.CachedBluetoothDevice; import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager; /** * Maintain and update saved bluetooth devices(bonded but not connected) Loading @@ -41,6 +43,26 @@ public class SavedBluetoothDeviceUpdater extends BluetoothDeviceUpdater super(context, fragment, devicePreferenceCallback); } @Override public void forceUpdate() { if (BluetoothAdapter.getDefaultAdapter().isEnabled()) { final CachedBluetoothDeviceManager cachedManager = mLocalManager.getCachedDeviceManager(); for (BluetoothDevice device : BluetoothAdapter.getDefaultAdapter().getMostRecentlyConnectedDevices()) { final CachedBluetoothDevice cachedDevice = cachedManager.findDevice(device); if (isFilterMatched(cachedDevice)) { // Add the preference if it is new one addPreference(cachedDevice, BluetoothDevicePreference.SortType.TYPE_NO_SORT); } else { removePreference(cachedDevice); } } } else { removeAllDevicesFromPreference(); } } @Override public boolean isFilterMatched(CachedBluetoothDevice cachedDevice) { final BluetoothDevice device = cachedDevice.getDevice(); Loading Loading
src/com/android/settings/bluetooth/BluetoothDevicePreference.java +3 −1 Original line number Diff line number Diff line Loading @@ -60,10 +60,12 @@ public final class BluetoothDevicePreference extends GearPreference implements @Retention(RetentionPolicy.SOURCE) @IntDef({SortType.TYPE_DEFAULT, SortType.TYPE_FIFO}) SortType.TYPE_FIFO, SortType.TYPE_NO_SORT}) public @interface SortType { int TYPE_DEFAULT = 1; int TYPE_FIFO = 2; int TYPE_NO_SORT = 3; } private final CachedBluetoothDevice mCachedDevice; Loading
src/com/android/settings/bluetooth/BluetoothDeviceUpdater.java +10 −1 Original line number Diff line number Diff line Loading @@ -232,12 +232,21 @@ public abstract class BluetoothDeviceUpdater implements BluetoothCallback, * Add the {@link Preference} that represents the {@code cachedDevice} */ protected void addPreference(CachedBluetoothDevice cachedDevice) { addPreference(cachedDevice, BluetoothDevicePreference.SortType.TYPE_DEFAULT); } /** * Add the {@link Preference} with {@link BluetoothDevicePreference.SortType} that * represents the {@code cachedDevice} */ protected void addPreference(CachedBluetoothDevice cachedDevice, @BluetoothDevicePreference.SortType int type) { final BluetoothDevice device = cachedDevice.getDevice(); if (!mPreferenceMap.containsKey(device)) { BluetoothDevicePreference btPreference = new BluetoothDevicePreference(mPrefContext, cachedDevice, true /* showDeviceWithoutNames */, BluetoothDevicePreference.SortType.TYPE_DEFAULT); type); btPreference.setKey(getPreferenceKey()); btPreference.setOnGearClickListener(mDeviceProfilesListener); if (this instanceof Preference.OnPreferenceClickListener) { Loading
src/com/android/settings/bluetooth/SavedBluetoothDeviceUpdater.java +22 −0 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ */ package com.android.settings.bluetooth; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.content.Context; import android.util.Log; Loading @@ -24,6 +25,7 @@ import androidx.preference.Preference; import com.android.settings.connecteddevice.DevicePreferenceCallback; import com.android.settings.dashboard.DashboardFragment; import com.android.settingslib.bluetooth.CachedBluetoothDevice; import com.android.settingslib.bluetooth.CachedBluetoothDeviceManager; /** * Maintain and update saved bluetooth devices(bonded but not connected) Loading @@ -41,6 +43,26 @@ public class SavedBluetoothDeviceUpdater extends BluetoothDeviceUpdater super(context, fragment, devicePreferenceCallback); } @Override public void forceUpdate() { if (BluetoothAdapter.getDefaultAdapter().isEnabled()) { final CachedBluetoothDeviceManager cachedManager = mLocalManager.getCachedDeviceManager(); for (BluetoothDevice device : BluetoothAdapter.getDefaultAdapter().getMostRecentlyConnectedDevices()) { final CachedBluetoothDevice cachedDevice = cachedManager.findDevice(device); if (isFilterMatched(cachedDevice)) { // Add the preference if it is new one addPreference(cachedDevice, BluetoothDevicePreference.SortType.TYPE_NO_SORT); } else { removePreference(cachedDevice); } } } else { removeAllDevicesFromPreference(); } } @Override public boolean isFilterMatched(CachedBluetoothDevice cachedDevice) { final BluetoothDevice device = cachedDevice.getDevice(); Loading