diff options
| author | Matthew Xie <mattx@google.com> | 2011-07-29 18:57:58 -0700 |
|---|---|---|
| committer | Matthew Xie <mattx@google.com> | 2011-08-02 15:22:09 -0700 |
| commit | 8594394aadeaaa3f834d33d7b198fb071e0f31fe (patch) | |
| tree | cd765ec51f9d90188f4beb3e03b851b5d3fd9344 /core/java/android/server/BluetoothAdapterStateMachine.java | |
| parent | c98c3597abf90ff547e1543923cba937e268a7df (diff) | |
| download | frameworks_base-8594394aadeaaa3f834d33d7b198fb071e0f31fe.zip frameworks_base-8594394aadeaaa3f834d33d7b198fb071e0f31fe.tar.gz frameworks_base-8594394aadeaaa3f834d33d7b198fb071e0f31fe.tar.bz2 | |
Move mBluetoothService.runBluetooth after broadcasting the STATE_ON intent.
This is because broadcastState method move the Bluetooth adapter state
to ON. The mBluetoothService.runBluetooth should be called only in the ON state.
Remove mIsDiscovering variable in BluetoothService.
Fix a bug in BluetoothA2dpService that caused 2 times of state change
from DISCONNECTED to CONNECTING that messed up BluetoothService's
connection state count.
Change-Id: Ifb782a845ae70f007d2e036d930bb55f445d68b5
Diffstat (limited to 'core/java/android/server/BluetoothAdapterStateMachine.java')
| -rw-r--r-- | core/java/android/server/BluetoothAdapterStateMachine.java | 32 |
1 files changed, 13 insertions, 19 deletions
diff --git a/core/java/android/server/BluetoothAdapterStateMachine.java b/core/java/android/server/BluetoothAdapterStateMachine.java index 83f5a9f..cb18ade 100644 --- a/core/java/android/server/BluetoothAdapterStateMachine.java +++ b/core/java/android/server/BluetoothAdapterStateMachine.java @@ -156,7 +156,7 @@ final class BluetoothAdapterStateMachine extends StateMachine { private class PowerOff extends State { @Override public void enter() { - if (DBG) log("Enter PowerOff: "); + if (DBG) log("Enter PowerOff: " + getCurrentMessage().what); } @Override public boolean processMessage(Message message) { @@ -280,7 +280,7 @@ final class BluetoothAdapterStateMachine extends StateMachine { @Override public void enter() { - if (DBG) log("Enter WarmUp"); + if (DBG) log("Enter WarmUp: " + getCurrentMessage().what); } @Override @@ -319,7 +319,7 @@ final class BluetoothAdapterStateMachine extends StateMachine { private class HotOff extends State { @Override public void enter() { - if (DBG) log("Enter HotOff:"); + if (DBG) log("Enter HotOff: " + getCurrentMessage().what); } @Override @@ -380,8 +380,7 @@ final class BluetoothAdapterStateMachine extends StateMachine { @Override public void enter() { - int what = getCurrentMessage().what; - if (DBG) log("Enter Switching: " + what); + if (DBG) log("Enter Switching: " + getCurrentMessage().what); } @Override public boolean processMessage(Message message) { @@ -390,13 +389,12 @@ final class BluetoothAdapterStateMachine extends StateMachine { boolean retValue = HANDLED; switch(message.what) { case BECAME_PAIRABLE: - String[] propVal = {"Pairable", mBluetoothService.getProperty("Pairable")}; - mEventLoop.onPropertyChanged(propVal); - - // run bluetooth now that it's turned on - mBluetoothService.runBluetooth(); + mBluetoothService.initBluetoothAfterTurningOn(); transitionTo(mBluetoothOn); broadcastState(BluetoothAdapter.STATE_ON); + // run bluetooth now that it's turned on + // Note runBluetooth should be called only in adapter STATE_ON + mBluetoothService.runBluetooth(); break; case BECAME_NON_PAIRABLE: if (mBluetoothService.getAdapterConnectionState() == @@ -438,11 +436,10 @@ final class BluetoothAdapterStateMachine extends StateMachine { } private class BluetoothOn extends State { - private boolean mPersistBluetoothOff = false; @Override public void enter() { - if (DBG) log("Enter BluetoothOn: " + mPersistBluetoothOff); + if (DBG) log("Enter BluetoothOn: " + getCurrentMessage().what); } @Override public boolean processMessage(Message message) { @@ -500,7 +497,7 @@ final class BluetoothAdapterStateMachine extends StateMachine { @Override public void enter() { - if (DBG) log("Enter PerProcessState"); + if (DBG) log("Enter PerProcessState: " + getCurrentMessage().what); } @Override @@ -523,14 +520,11 @@ final class BluetoothAdapterStateMachine extends StateMachine { case USER_TURN_ON: broadcastState(BluetoothAdapter.STATE_TURNING_ON); persistSwitchSetting(true); - - String[] propVal = {"Pairable", mBluetoothService.getProperty("Pairable")}; - mEventLoop.onPropertyChanged(propVal); - - // run bluetooth now that it's turned on - mBluetoothService.runBluetooth(); + mBluetoothService.initBluetoothAfterTurningOn(); transitionTo(mBluetoothOn); broadcastState(BluetoothAdapter.STATE_ON); + // run bluetooth now that it's turned on + mBluetoothService.runBluetooth(); break; case USER_TURN_OFF: broadcastState(BluetoothAdapter.STATE_TURNING_OFF); |
