From 7f58b36fec386b3e403a1eb32b506d60be080f10 Mon Sep 17 00:00:00 2001 From: Matthew Xie Date: Wed, 2 May 2012 13:09:58 -0700 Subject: Always move Bluetooth Adapter to cold state when turn off Bluetooth. quick switch feature introduced in ICS does not work very well. Reported logs indicate the Bluez stack cannot sustain the long time ON/hotoff state. This change will always move the adapter to code but move it to hotoff to be able to turn on quickly. bug 5792792 Change-Id: I41c39d4bf11bb5eb3cd83279e8ec81e01774e008 --- core/java/android/server/BluetoothAdapterStateMachine.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'core/java/android/server/BluetoothAdapterStateMachine.java') diff --git a/core/java/android/server/BluetoothAdapterStateMachine.java b/core/java/android/server/BluetoothAdapterStateMachine.java index 7711caa..f543de9 100644 --- a/core/java/android/server/BluetoothAdapterStateMachine.java +++ b/core/java/android/server/BluetoothAdapterStateMachine.java @@ -441,9 +441,10 @@ final class BluetoothAdapterStateMachine extends StateMachine { if (mPublicState == BluetoothAdapter.STATE_TURNING_OFF) { transitionTo(mHotOff); finishSwitchingOff(); - if (!mContext.getResources().getBoolean - (com.android.internal.R.bool.config_bluetooth_adapter_quick_switch)) { - deferMessage(obtainMessage(TURN_COLD)); + deferMessage(obtainMessage(TURN_COLD)); + if (mContext.getResources().getBoolean + (com.android.internal.R.bool.config_bluetooth_adapter_quick_switch)) { + deferMessage(obtainMessage(TURN_HOT)); } } } else { @@ -612,9 +613,10 @@ final class BluetoothAdapterStateMachine extends StateMachine { removeMessages(POWER_DOWN_TIMEOUT); if (!((Boolean) message.obj)) { transitionTo(mHotOff); - if (!mContext.getResources().getBoolean + deferMessage(obtainMessage(TURN_COLD)); + if (mContext.getResources().getBoolean (com.android.internal.R.bool.config_bluetooth_adapter_quick_switch)) { - deferMessage(obtainMessage(TURN_COLD)); + deferMessage(obtainMessage(TURN_HOT)); } } else { if (!isTurningOn) { -- cgit v1.1