diff --git a/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java b/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java index a19fc63bb1c..44e2be34728 100644 --- a/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java +++ b/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java @@ -176,6 +176,8 @@ public abstract class LocalBluetoothProfileManager { @Override public boolean disconnect(BluetoothDevice device) { + // Downgrade priority as user is disconnecting the sink. + mService.setSinkPriority(device, BluetoothA2dp.PRIORITY_ON); return mService.disconnectSink(device); } @@ -269,6 +271,8 @@ public abstract class LocalBluetoothProfileManager { @Override public boolean disconnect(BluetoothDevice device) { if (mService.getCurrentHeadset().equals(device)) { + // Downgrade prority as user is disconnecting the headset. + mService.setPriority(device, BluetoothHeadset.PRIORITY_ON); return mService.disconnectHeadset(); } else { return false; @@ -302,7 +306,7 @@ public abstract class LocalBluetoothProfileManager { @Override public void setPreferred(BluetoothDevice device, boolean preferred) { mService.setPriority(device, - preferred ? BluetoothHeadset.PRIORITY_AUTO : BluetoothHeadset.PRIORITY_OFF); + preferred ? BluetoothHeadset.PRIORITY_AUTO_CONNECT : BluetoothHeadset.PRIORITY_OFF); } @Override