Use another callback to notify the updater that UI should be updated
Replace onConnectionStateChanged callback with onProfileConnectionStateChanged. While updater is notified, isFilterMatched(cachedDevice) will decide whether to add/remove from UI based on audio profiles and audio mode. Bug: 76447449 Test: make RunSettingsRoboTests -j28 Change-Id: Icfba1ce2297e4638679158f9f99bae276940d885
This commit is contained in:
@@ -15,7 +15,6 @@
|
||||
*/
|
||||
package com.android.settings.bluetooth;
|
||||
|
||||
import android.bluetooth.BluetoothAdapter;
|
||||
import android.bluetooth.BluetoothDevice;
|
||||
import android.bluetooth.BluetoothProfile;
|
||||
import android.content.Context;
|
||||
@@ -60,19 +59,20 @@ public class ConnectedBluetoothDeviceUpdater extends BluetoothDeviceUpdater {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onConnectionStateChanged(CachedBluetoothDevice cachedDevice, int state) {
|
||||
public void onProfileConnectionStateChanged(CachedBluetoothDevice cachedDevice, int state,
|
||||
int bluetoothProfile) {
|
||||
if (DBG) {
|
||||
Log.d(TAG,"onConnectionStateChanged() device : " +
|
||||
cachedDevice.getName() + ", state : " + state);
|
||||
Log.d(TAG, "onProfileConnectionStateChanged() device: " +
|
||||
cachedDevice.getName() + ", state: " + state + ", bluetoothProfile: "
|
||||
+ bluetoothProfile);
|
||||
}
|
||||
|
||||
if (state == BluetoothAdapter.STATE_CONNECTED) {
|
||||
if (state == BluetoothProfile.STATE_CONNECTED) {
|
||||
if (isFilterMatched(cachedDevice)) {
|
||||
addPreference(cachedDevice);
|
||||
} else {
|
||||
removePreference(cachedDevice);
|
||||
}
|
||||
} else if (state == BluetoothAdapter.STATE_DISCONNECTED) {
|
||||
} else if (state == BluetoothProfile.STATE_DISCONNECTED) {
|
||||
removePreference(cachedDevice);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user