Merge "SystemUI: Show percentage of battery"
diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java
index f6d787c..9207f0a 100644
--- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java
+++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/CachedBluetoothDevice.java
@@ -135,6 +135,8 @@
if (newProfileState == BluetoothProfile.STATE_CONNECTED) {
if (profile instanceof MapProfile) {
profile.setPreferred(mDevice, true);
+ mRemovedProfiles.remove(profile);
+ mProfiles.add(profile);
} else if (!mProfiles.contains(profile)) {
mRemovedProfiles.remove(profile);
mProfiles.add(profile);
diff --git a/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothProfileManager.java b/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothProfileManager.java
old mode 100755
new mode 100644
index 6a7890f..3876468
--- a/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothProfileManager.java
+++ b/packages/SettingsLib/src/com/android/settingslib/bluetooth/LocalBluetoothProfileManager.java
@@ -24,6 +24,7 @@
import android.bluetooth.BluetoothInputDevice;
import android.bluetooth.BluetoothPan;
import android.bluetooth.BluetoothDun;
+import android.bluetooth.BluetoothPbap;
import android.bluetooth.BluetoothProfile;
import android.bluetooth.BluetoothUuid;
import android.content.Context;
@@ -126,15 +127,17 @@
addProfile(mMapProfile, MapProfile.NAME,
BluetoothMap.ACTION_CONNECTION_STATE_CHANGED);
- // enable DUN only if the property is set
+ // enable DUN only if the property is set
if (SystemProperties.getBoolean("ro.bluetooth.dun", false) == true) {
mDunProfile = new DunServerProfile(context);
addProfile(mDunProfile, DunServerProfile.NAME,
BluetoothDun.ACTION_CONNECTION_STATE_CHANGED);
}
- //Create PBAP server profile, but do not add it to list of profiles
- // as we do not need to monitor the profile as part of profile list
+
+ //Create PBAP server profile
mPbapProfile = new PbapServerProfile(context);
+ addProfile(mPbapProfile, PbapServerProfile.NAME,
+ BluetoothPbap.PBAP_STATE_CHANGED_ACTION);
if (DEBUG) Log.d(TAG, "LocalBluetoothProfileManager construction complete");
}
@@ -411,6 +414,13 @@
removedProfiles.remove(mMapProfile);
mMapProfile.setPreferred(device, true);
}
+
+ if ((mPbapProfile != null) &&
+ (mPbapProfile.getConnectionStatus(device) == BluetoothProfile.STATE_CONNECTED)) {
+ profiles.add(mPbapProfile);
+ removedProfiles.remove(mPbapProfile);
+ mPbapProfile.setPreferred(device, true);
+ }
}
}
diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml
index c48a29a..c0a1e5c 100644
--- a/packages/SettingsProvider/res/values/defaults.xml
+++ b/packages/SettingsProvider/res/values/defaults.xml
@@ -276,4 +276,18 @@
<!-- Voice Call earpiece Volume,its value is from 0 to 5,default value is 4 -->
<integer name="def_voice_call_earpiece_volume" translatable="false">4</integer>
+
+ <!-- Date format,yyyy-MM-dd: 2013/07/30; MM-dd-yyyy:07/30/2013; dd-MM-yyyy:30/07/2013 -->
+ <string name="def_date_format" translatable="false"></string>
+
+ <!-- Time format,default value is 24 : 24 format,other value is 12 format -->
+ <string name="def_time_format" translatable="false"></string>
+
+ <!-- enable accessibility or not,1:enable;0:disable -->
+ <integer name="def_enable_accessibility">0</integer>
+
+ <!-- for enable accessibility services,split by ":" ,
+ example "com.google.android.marvin.talkback/
+ com.google.android.marvin.talkback.TalkBackService" -->
+ <string name="def_enable_accessibility_services" translatable="false"></string>
</resources>
diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
index 8c98f5c..5d2229f 100644
--- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
+++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
@@ -2168,6 +2168,35 @@
final SettingsState systemSettings = getSystemSettingsLocked(userId);
loadCustomizedVolumeLevels(systemSettings);
}
+
+ // Allow OEMs to set date format, time format and enable/disable accessibility
+ // services in resource.
+ final SettingsState dateAndTimeSettings = getSystemSettingsLocked(userId);
+ String defaultStringComponent;
+ int defaultIntComponent;
+ defaultStringComponent = getContext().getResources().getString(
+ R.string.def_date_format);
+ if (!TextUtils.isEmpty(defaultStringComponent)) {
+ dateAndTimeSettings.insertSettingLocked(Settings.System.DATE_FORMAT,
+ defaultStringComponent,SettingsState.SYSTEM_PACKAGE_NAME);
+ }
+ defaultStringComponent = getContext().getResources().getString(
+ R.string.def_time_format);
+ if (!TextUtils.isEmpty(defaultStringComponent)) {
+ dateAndTimeSettings.insertSettingLocked(Settings.System.TIME_12_24,
+ defaultStringComponent,SettingsState.SYSTEM_PACKAGE_NAME);
+ }
+ defaultIntComponent = getContext().getResources().getInteger(
+ R.integer.def_enable_accessibility);
+ secureSettings.insertSettingLocked(Settings.Secure.ACCESSIBILITY_ENABLED,
+ String.valueOf(defaultIntComponent),SettingsState.SYSTEM_PACKAGE_NAME);
+ defaultStringComponent = getContext().getResources().getString(
+ R.string.def_enable_accessibility_services);
+ if (!TextUtils.isEmpty(defaultStringComponent)) {
+ secureSettings.insertSettingLocked(Settings.Secure.
+ ENABLED_ACCESSIBILITY_SERVICES,defaultStringComponent,
+ SettingsState.SYSTEM_PACKAGE_NAME);
+ }
currentVersion = 122;
}
// vXXX: Add new settings above this point.