summaryrefslogtreecommitdiffstats
path: root/core/java/android/server
diff options
context:
space:
mode:
authorJaikumar Ganesh <jaikumar@google.com>2010-07-19 14:59:44 -0700
committerJaikumar Ganesh <jaikumar@google.com>2010-07-20 19:51:58 -0700
commitc3ee99d9eb7e8b4b20c2b8f1c548373e1017e0d3 (patch)
tree2b77acc6e5030f8211fe4901d679b64dbd778bb5 /core/java/android/server
parentd1f4a17ea580a0478932993868a0d39d993aec61 (diff)
downloadframeworks_base-c3ee99d9eb7e8b4b20c2b8f1c548373e1017e0d3.zip
frameworks_base-c3ee99d9eb7e8b4b20c2b8f1c548373e1017e0d3.tar.gz
frameworks_base-c3ee99d9eb7e8b4b20c2b8f1c548373e1017e0d3.tar.bz2
Set initial HID profile preference.
Change-Id: I804089cbea4ad25b87ade60fa8a905ddb167bff4
Diffstat (limited to 'core/java/android/server')
-rw-r--r--core/java/android/server/BluetoothService.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/core/java/android/server/BluetoothService.java b/core/java/android/server/BluetoothService.java
index 8bee174..d7cd933 100644
--- a/core/java/android/server/BluetoothService.java
+++ b/core/java/android/server/BluetoothService.java
@@ -676,6 +676,10 @@ public class BluetoothService extends IBluetooth.Stub {
removeProfileState(address);
}
+ // HID is handled by BluetoothService, other profiles
+ // will be handled by their respective services.
+ setInitialInputDevicePriority(mAdapter.getRemoteDevice(address), state);
+
if (DBG) log(address + " bond state " + oldState + " -> " + state + " (" +
reason + ")");
Intent intent = new Intent(BluetoothDevice.ACTION_BOND_STATE_CHANGED);
@@ -1347,6 +1351,19 @@ public class BluetoothService extends IBluetooth.Stub {
handleInputDeviceStateChange(device, state);
}
+ private void setInitialInputDevicePriority(BluetoothDevice device, int state) {
+ switch (state) {
+ case BluetoothDevice.BOND_BONDED:
+ if (getInputDevicePriority(device) == BluetoothInputDevice.PRIORITY_UNDEFINED) {
+ setInputDevicePriority(device, BluetoothInputDevice.PRIORITY_ON);
+ }
+ break;
+ case BluetoothDevice.BOND_NONE:
+ setInputDevicePriority(device, BluetoothInputDevice.PRIORITY_UNDEFINED);
+ break;
+ }
+ }
+
/*package*/ boolean isRemoteDeviceInCache(String address) {
return (mDeviceProperties.get(address) != null);
}