Merge "Settings>Security>Show notifications (on the lockscreen)."
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index fe777c9..69fb73a 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1295,6 +1295,7 @@
<intent-filter>
<action android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
<action android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
+ <action android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
</intent-filter>
</receiver>
diff --git a/src/com/android/settings/bluetooth/BluetoothPairingRequest.java b/src/com/android/settings/bluetooth/BluetoothPairingRequest.java
index 838e7b1..ea36fee 100644
--- a/src/com/android/settings/bluetooth/BluetoothPairingRequest.java
+++ b/src/com/android/settings/bluetooth/BluetoothPairingRequest.java
@@ -103,6 +103,19 @@
NotificationManager manager = (NotificationManager) context
.getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel(NOTIFICATION_ID);
+
+ } else if (BluetoothDevice.ACTION_BOND_STATE_CHANGED.equals(action)) {
+ int bondState = intent.getIntExtra(BluetoothDevice.EXTRA_BOND_STATE,
+ BluetoothDevice.ERROR);
+ int oldState = intent.getIntExtra(BluetoothDevice.EXTRA_PREVIOUS_BOND_STATE,
+ BluetoothDevice.ERROR);
+ if((oldState == BluetoothDevice.BOND_BONDING) &&
+ (bondState == BluetoothDevice.BOND_NONE)) {
+ // Remove the notification
+ NotificationManager manager = (NotificationManager) context
+ .getSystemService(Context.NOTIFICATION_SERVICE);
+ manager.cancel(NOTIFICATION_ID);
+ }
}
}
}
diff --git a/src/com/android/settings/tts/TtsEngineSettingsFragment.java b/src/com/android/settings/tts/TtsEngineSettingsFragment.java
index bb5ac7a..25ec1fd 100644
--- a/src/com/android/settings/tts/TtsEngineSettingsFragment.java
+++ b/src/com/android/settings/tts/TtsEngineSettingsFragment.java
@@ -158,12 +158,22 @@
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == VOICE_DATA_INTEGRITY_CHECK) {
- mVoiceDataDetails = data;
- updateVoiceDetails();
+ if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) {
+ updateVoiceDetails(data);
+ } else {
+ Log.e(TAG, "CheckVoiceData activity failed");
+ }
}
}
- private void updateVoiceDetails() {
+ private void updateVoiceDetails(Intent data) {
+ if (data == null){
+ Log.e(TAG, "Engine failed voice data integrity check (null return)" +
+ mTts.getCurrentEngine());
+ return;
+ }
+ mVoiceDataDetails = data;
+
if (DBG) Log.d(TAG, "Parsing voice data details, data: " + mVoiceDataDetails.toUri(0));
final ArrayList<String> available = mVoiceDataDetails.getStringArrayListExtra(