OSDN Git Service

am 7805fa99: am 022299df: Merge "Disconnect dock only if its connected." into gingerbread
authorJaikumar Ganesh <jaikumar@google.com>
Sat, 16 Oct 2010 15:52:36 +0000 (08:52 -0700)
committerAndroid Git Automerger <android-git-automerger@android.com>
Sat, 16 Oct 2010 15:52:36 +0000 (08:52 -0700)
Merge commit '7805fa99ffce21bb9b016ffdd5375d331b9a8a54'

* commit '7805fa99ffce21bb9b016ffdd5375d331b9a8a54':
  Disconnect dock only if its connected.

src/com/android/settings/bluetooth/DockService.java

index 47d4076..e817e78 100644 (file)
@@ -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) {