summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings')
-rw-r--r--src/com/android/settings/bluetooth/DockService.java9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/com/android/settings/bluetooth/DockService.java b/src/com/android/settings/bluetooth/DockService.java
index 47d4076..e817e78 100644
--- a/src/com/android/settings/bluetooth/DockService.java
+++ b/src/com/android/settings/bluetooth/DockService.java
@@ -719,9 +719,12 @@ public class DockService extends Service implements AlertDialog.OnMultiChoiceCli
// Checked but not connected
callConnect = true;
} else if (!mCheckedItems[i]) {
- // Unchecked but connected
- if (DEBUG) Log.d(TAG, "applyBtSettings - Disconnecting");
- cachedDevice.disconnect(mProfiles[i]);
+ // Unchecked, may or may not be connected.
+ int status = profileManager.getConnectionStatus(cachedDevice.getDevice());
+ if (SettingsBtStatus.isConnectionStatusConnected(status)) {
+ if (DEBUG) Log.d(TAG, "applyBtSettings - Disconnecting");
+ cachedDevice.disconnect(mProfiles[i]);
+ }
}
profileManager.setPreferred(device, mCheckedItems[i]);
if (DEBUG) {