Merge "Bluetooth PAN: Set isPreferred to true (2/2)" into mnc-dev
diff --git a/src/com/android/settings/bluetooth/DeviceProfilesSettings.java b/src/com/android/settings/bluetooth/DeviceProfilesSettings.java
index 1df6275..e58abd6 100755
--- a/src/com/android/settings/bluetooth/DeviceProfilesSettings.java
+++ b/src/com/android/settings/bluetooth/DeviceProfilesSettings.java
@@ -39,6 +39,7 @@
import com.android.settingslib.bluetooth.LocalBluetoothProfile;
import com.android.settingslib.bluetooth.LocalBluetoothProfileManager;
import com.android.settingslib.bluetooth.MapProfile;
+import com.android.settingslib.bluetooth.PanProfile;
import com.android.settingslib.bluetooth.PbapServerProfile;
import java.util.HashMap;
@@ -244,8 +245,12 @@
}
if (profile.isPreferred(device)) {
// profile is preferred but not connected: disable auto-connect
- profile.setPreferred(device, false);
- refreshProfilePreference(profilePref, profile);
+ if (profile instanceof PanProfile) {
+ mCachedDevice.connectProfile(profile);
+ } else {
+ profile.setPreferred(device, false);
+ refreshProfilePreference(profilePref, profile);
+ }
} else {
profile.setPreferred(device, true);
mCachedDevice.connectProfile(profile);
@@ -330,10 +335,15 @@
if (profile instanceof MapProfile) {
profilePref.setChecked(mCachedDevice.getMessagePermissionChoice()
== CachedBluetoothDevice.ACCESS_ALLOWED);
+
} else if (profile instanceof PbapServerProfile) {
- // Handle PBAP specially.
profilePref.setChecked(mCachedDevice.getPhonebookPermissionChoice()
== CachedBluetoothDevice.ACCESS_ALLOWED);
+
+ } else if (profile instanceof PanProfile) {
+ profilePref.setChecked(profile.getConnectionStatus(device) ==
+ BluetoothProfile.STATE_CONNECTED);
+
} else {
profilePref.setChecked(profile.isPreferred(device));
}