Merge "Use hasSystemFeature() to check for p2p"
diff --git a/res/drawable-hdpi/appwidget_bg_holo.9.png b/res/drawable-hdpi/appwidget_bg_holo.9.png
index 829e656..34af75f 100644
--- a/res/drawable-hdpi/appwidget_bg_holo.9.png
+++ b/res/drawable-hdpi/appwidget_bg_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_mid_c_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_mid_c_holo.9.png
index dbbf15c..9d6fcc3 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_mid_c_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_mid_c_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_mid_l_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_mid_l_holo.9.png
index 6e772d1..78996de 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_mid_l_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_mid_l_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_mid_r_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_mid_r_holo.9.png
index 03d95f0..59fd474 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_mid_r_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_mid_r_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_off_c_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_off_c_holo.9.png
index 875c5f9..2a147ca 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_off_c_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_off_c_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_off_l_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_off_l_holo.9.png
index 2fc328b..3d04abd 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_off_l_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_off_l_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_off_r_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_off_r_holo.9.png
index 213bc4c..32dc212 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_off_r_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_off_r_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_on_c_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_on_c_holo.9.png
index 84737ea..dd1b3ff 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_on_c_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_on_c_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_on_l_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_on_l_holo.9.png
index f15709e..e6c5acf 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_on_l_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_on_l_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/appwidget_settings_ind_on_r_holo.9.png b/res/drawable-hdpi/appwidget_settings_ind_on_r_holo.9.png
index a92d8e4..9d96d06 100644
--- a/res/drawable-hdpi/appwidget_settings_ind_on_r_holo.9.png
+++ b/res/drawable-hdpi/appwidget_settings_ind_on_r_holo.9.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_bluetooth_off_holo.png b/res/drawable-hdpi/ic_appwidget_settings_bluetooth_off_holo.png
index bfa2d51..544a6dc 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_bluetooth_off_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_bluetooth_off_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_bluetooth_on_holo.png b/res/drawable-hdpi/ic_appwidget_settings_bluetooth_on_holo.png
index 2a84db0..5a4596b 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_bluetooth_on_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_bluetooth_on_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_brightness_auto_holo.png b/res/drawable-hdpi/ic_appwidget_settings_brightness_auto_holo.png
index 8b91582..54c8266 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_brightness_auto_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_brightness_auto_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_brightness_full_holo.png b/res/drawable-hdpi/ic_appwidget_settings_brightness_full_holo.png
index c5044bc..0de4d0e 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_brightness_full_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_brightness_full_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_gps_on_holo.png b/res/drawable-hdpi/ic_appwidget_settings_gps_on_holo.png
index 1b1666a..89e823b 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_gps_on_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_gps_on_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_sync_on_holo.png b/res/drawable-hdpi/ic_appwidget_settings_sync_on_holo.png
index 135c4dc..e37446c 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_sync_on_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_sync_on_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_wifi_off_holo.png b/res/drawable-hdpi/ic_appwidget_settings_wifi_off_holo.png
index 9f36c40..0e0ccda 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_wifi_off_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_wifi_off_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/ic_appwidget_settings_wifi_on_holo.png b/res/drawable-hdpi/ic_appwidget_settings_wifi_on_holo.png
index bdb2bf3..c3c51e85 100644
--- a/res/drawable-hdpi/ic_appwidget_settings_wifi_on_holo.png
+++ b/res/drawable-hdpi/ic_appwidget_settings_wifi_on_holo.png
Binary files differ
diff --git a/res/drawable-hdpi/preview.png b/res/drawable-hdpi/preview.png
deleted file mode 100644
index d8f1880..0000000
--- a/res/drawable-hdpi/preview.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_bg_holo.9.png b/res/drawable-mdpi/appwidget_bg_holo.9.png
index 5cd3a61..fa082c2 100644
--- a/res/drawable-mdpi/appwidget_bg_holo.9.png
+++ b/res/drawable-mdpi/appwidget_bg_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_mid_c_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_mid_c_holo.9.png
index 3b27803..9c5bd25 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_mid_c_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_mid_c_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_mid_l_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_mid_l_holo.9.png
index a7bd60b..ee8dcce 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_mid_l_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_mid_l_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_mid_r_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_mid_r_holo.9.png
index a60a7a4..a91f50b 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_mid_r_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_mid_r_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_off_c_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_off_c_holo.9.png
index 552616c..2edaa2b 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_off_c_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_off_c_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_off_l_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_off_l_holo.9.png
index 735403c..1452c51 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_off_l_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_off_l_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_off_r_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_off_r_holo.9.png
index f348c13..9844e87 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_off_r_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_off_r_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_on_c_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_on_c_holo.9.png
index 7d98a6e..5a59a10 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_on_c_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_on_c_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_on_l_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_on_l_holo.9.png
index 58357d0..9a1cb7a 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_on_l_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_on_l_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/appwidget_settings_ind_on_r_holo.9.png b/res/drawable-mdpi/appwidget_settings_ind_on_r_holo.9.png
index b63ca40..4ac5dab 100644
--- a/res/drawable-mdpi/appwidget_settings_ind_on_r_holo.9.png
+++ b/res/drawable-mdpi/appwidget_settings_ind_on_r_holo.9.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_bluetooth_off_holo.png b/res/drawable-mdpi/ic_appwidget_settings_bluetooth_off_holo.png
index 5681da6..a830c6a 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_bluetooth_off_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_bluetooth_off_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_bluetooth_on_holo.png b/res/drawable-mdpi/ic_appwidget_settings_bluetooth_on_holo.png
index 5dedfad..07328dd 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_bluetooth_on_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_bluetooth_on_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_brightness_auto_holo.png b/res/drawable-mdpi/ic_appwidget_settings_brightness_auto_holo.png
index b341811..81f80df 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_brightness_auto_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_brightness_auto_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_brightness_full_holo.png b/res/drawable-mdpi/ic_appwidget_settings_brightness_full_holo.png
index 5b40244..b3c94c7 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_brightness_full_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_brightness_full_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_gps_on_holo.png b/res/drawable-mdpi/ic_appwidget_settings_gps_on_holo.png
index 1c064ff..4a70da7 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_gps_on_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_gps_on_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_sync_on_holo.png b/res/drawable-mdpi/ic_appwidget_settings_sync_on_holo.png
index 5bffa9a..6e3c81a 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_sync_on_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_sync_on_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_wifi_off_holo.png b/res/drawable-mdpi/ic_appwidget_settings_wifi_off_holo.png
index fc6670b..6edec54 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_wifi_off_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_wifi_off_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_appwidget_settings_wifi_on_holo.png b/res/drawable-mdpi/ic_appwidget_settings_wifi_on_holo.png
index e6730c5..6cb023a 100644
--- a/res/drawable-mdpi/ic_appwidget_settings_wifi_on_holo.png
+++ b/res/drawable-mdpi/ic_appwidget_settings_wifi_on_holo.png
Binary files differ
diff --git a/res/drawable-mdpi/preview.png b/res/drawable-mdpi/preview.png
deleted file mode 100644
index ebf7f3d..0000000
--- a/res/drawable-mdpi/preview.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-nodpi/preview.png b/res/drawable-nodpi/preview.png
new file mode 100644
index 0000000..10a7c90
--- /dev/null
+++ b/res/drawable-nodpi/preview.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_bg_holo.9.png b/res/drawable-xhdpi/appwidget_bg_holo.9.png
index 4628822..a30874b 100644
--- a/res/drawable-xhdpi/appwidget_bg_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_bg_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_mid_c_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_mid_c_holo.9.png
index c2a4902..45f6b8a 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_mid_c_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_mid_c_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_mid_l_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_mid_l_holo.9.png
index 206a731..083997c 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_mid_l_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_mid_l_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_mid_r_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_mid_r_holo.9.png
index d0768a3..98b4711 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_mid_r_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_mid_r_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_off_c_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_off_c_holo.9.png
index 590fac1..1c7021c 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_off_c_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_off_c_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_off_l_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_off_l_holo.9.png
index b9e6721..1c96527 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_off_l_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_off_l_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_off_r_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_off_r_holo.9.png
index 260a1fd..7e9000b 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_off_r_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_off_r_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_on_c_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_on_c_holo.9.png
index acc10ec..dd6ebcf 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_on_c_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_on_c_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_on_l_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_on_l_holo.9.png
index 897cda4..5ac5819 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_on_l_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_on_l_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/appwidget_settings_ind_on_r_holo.9.png b/res/drawable-xhdpi/appwidget_settings_ind_on_r_holo.9.png
index 072338a..5b748c1 100644
--- a/res/drawable-xhdpi/appwidget_settings_ind_on_r_holo.9.png
+++ b/res/drawable-xhdpi/appwidget_settings_ind_on_r_holo.9.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_off_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_off_holo.png
index 9ef00a8..9b75bb1 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_off_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_off_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_on_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_on_holo.png
index de68344..c830b60 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_on_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_bluetooth_on_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_brightness_auto_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_brightness_auto_holo.png
index 5059b0e..b76f1c3 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_brightness_auto_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_brightness_auto_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_brightness_full_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_brightness_full_holo.png
index 525456a..5bd888b 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_brightness_full_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_brightness_full_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_gps_on_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_gps_on_holo.png
index bdb71f2..2a9a290 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_gps_on_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_gps_on_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_sync_on_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_sync_on_holo.png
index 53fa2b4..55d4de8 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_sync_on_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_sync_on_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_wifi_off_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_wifi_off_holo.png
index 66eace2..53b4566 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_wifi_off_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_wifi_off_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_appwidget_settings_wifi_on_holo.png b/res/drawable-xhdpi/ic_appwidget_settings_wifi_on_holo.png
index 82d6c37..1dcbef5 100644
--- a/res/drawable-xhdpi/ic_appwidget_settings_wifi_on_holo.png
+++ b/res/drawable-xhdpi/ic_appwidget_settings_wifi_on_holo.png
Binary files differ
diff --git a/res/drawable-xhdpi/preview.png b/res/drawable-xhdpi/preview.png
deleted file mode 100644
index 8dfe17f..0000000
--- a/res/drawable-xhdpi/preview.png
+++ /dev/null
Binary files differ
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 78b18c0..f2287b6 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -733,16 +733,21 @@
 
     <!-- Informational text when encryption fails -->
     <string name="crypt_keeper_failed_summary" product="tablet">
-    Encryption was interrupted and can\'t complete. You must perform a factory data reset (erasing
-    all your data) before you can resume using your tablet. You can try encrypting your tablet
-    again after the reset is complete.
+      Encryption was interrupted and can\'t complete. As a result, the data on
+      your tablet is no longer accessible.
+      \n\n
+      To resume using your tablet, you must perform a factory reset.
+      When you set up your tablet after the reset, you\'ll have an opportunity
+      to restore any data that was backed up to your Google Account.
     </string>
 
     <!-- Informational text when encryption fails -->
     <string name="crypt_keeper_failed_summary" product="default">
-    Encryption was interrupted and can\'t complete. You must perform a factory data reset (erasing
-    all your data) before you can resume using your phone. You can try encrypting your phone
-    again after the reset is complete.
+      Encryption was interrupted and can\'t complete. As a result, the data on
+      your phone is no longer accessible.
+      \n\nTo resume using your phone, you must perform a factory reset.
+      When you set up your phone after the reset, you\'ll have an opportunity
+      to restore any data that was backed up to your Google Account.
     </string>
 
     <!-- Unlock Picker Settings --><skip />
diff --git a/res/xml/appwidget_info.xml b/res/xml/appwidget_info.xml
index 79d11dd..7a89cec 100644
--- a/res/xml/appwidget_info.xml
+++ b/res/xml/appwidget_info.xml
@@ -15,8 +15,8 @@
 -->
 
 <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
-    android:minWidth="294dip"
-    android:minHeight="72dip"
+    android:minWidth="288dip"
+    android:minHeight="48dip"
     android:previewImage="@drawable/preview"
     android:initialLayout="@layout/widget"
     >
diff --git a/src/com/android/settings/CryptKeeper.java b/src/com/android/settings/CryptKeeper.java
index 0c8ce28..b1de932e7 100644
--- a/src/com/android/settings/CryptKeeper.java
+++ b/src/com/android/settings/CryptKeeper.java
@@ -86,6 +86,11 @@
     private static final String FORCE_VIEW_ENTRY = "entry";
     private static final String FORCE_VIEW_ERROR = "error";
 
+    /** When encryption is detected, this flag indivates whether or not we've checked for erros. */
+    private boolean mValidationComplete;
+    /** A flag to indicate that the volume is in a bad state (e.g. partially encrypted). */
+    private boolean mEncryptionGoneBad;
+
     private int mCooldown;
     PowerManager.WakeLock mWakeLock;
     private EditText mPasswordEntry;
@@ -149,6 +154,34 @@
         }
     }
 
+    private class ValidationTask extends AsyncTask<Void, Void, Boolean> {
+        @Override
+        protected Boolean doInBackground(Void... params) {
+            IMountService service = getMountService();
+            try {
+                int state = service.getEncryptionState();
+                if (state == IMountService.ENCRYPTION_STATE_NONE) {
+                    Log.w(TAG, "Unexpectedly in CryptKeeper even though there is no encryption.");
+                    return true; // Unexpected, but fine, I guess...
+                }
+                return state == IMountService.ENCRYPTION_STATE_OK;
+            } catch (RemoteException e) {
+                Log.w(TAG, "Unable to get encryption state properly");
+                return true;
+            }
+        }
+
+        @Override
+        protected void onPostExecute(Boolean result) {
+            mValidationComplete = true;
+            if (Boolean.FALSE.equals(result)) {
+                Log.w(TAG, "Incomplete, or corrupted encryption detected. Prompting user to wipe.");
+                mEncryptionGoneBad = true;
+            }
+            setupUi();
+        }
+    }
+
     private final Handler mHandler = new Handler() {
         @Override
         public void handleMessage(Message msg) {
@@ -204,6 +237,9 @@
             mWakeLock = retained.wakelock;
             Log.d(TAG, "Restoring wakelock from NonConfigurationInstanceState");
         }
+
+        // Check the encryption status to ensure something hasn't gone bad.
+        new ValidationTask().execute((Void[]) null);
     }
 
     /**
@@ -216,10 +252,24 @@
         super.onStart();
 
         // Check to see why we were started.
+        if (mValidationComplete) {
+            setupUi();
+        }
+    }
+
+    /**
+     * Initializes the UI based on the current state of encryption.
+     * This is idempotent - calling repeatedly will simply re-initialize the UI.
+     */
+    private void setupUi() {
+        if (mEncryptionGoneBad || isDebugView(FORCE_VIEW_ERROR)) {
+            setContentView(R.layout.crypt_keeper_progress);
+            showFactoryReset();
+            return;
+        }
+
         String progress = SystemProperties.get("vold.encrypt_progress");
-        if (!"".equals(progress)
-                || isDebugView(FORCE_VIEW_PROGRESS)
-                || isDebugView(FORCE_VIEW_ERROR)) {
+        if (!"".equals(progress) || isDebugView(FORCE_VIEW_PROGRESS)) {
             setContentView(R.layout.crypt_keeper_progress);
             encryptionProgressInit();
         } else {
@@ -308,7 +358,7 @@
     private void updateProgress() {
         String state = SystemProperties.get("vold.encrypt_progress");
 
-        if ("error_partially_encrypted".equals(state) || isDebugView(FORCE_VIEW_ERROR)) {
+        if ("error_partially_encrypted".equals(state)) {
             showFactoryReset();
             return;
         }
diff --git a/src/com/android/settings/ProgressCategory.java b/src/com/android/settings/ProgressCategory.java
index 6c74846..e854a00 100644
--- a/src/com/android/settings/ProgressCategory.java
+++ b/src/com/android/settings/ProgressCategory.java
@@ -45,13 +45,13 @@
         textView.setVisibility(noDeviceFound ? View.INVISIBLE : View.VISIBLE);
         progressBar.setVisibility(mProgress ? View.VISIBLE : View.INVISIBLE);
 
-        if (mProgress) {
+        if (mProgress || !noDeviceFound) {
             if (mNoDeviceFoundAdded) {
                 removePreference(mNoDeviceFoundPreference);
                 mNoDeviceFoundAdded = false;
             }
         } else {
-            if (noDeviceFound && !mNoDeviceFoundAdded) {
+            if (!mNoDeviceFoundAdded) {
                 if (mNoDeviceFoundPreference == null) {
                     mNoDeviceFoundPreference = new Preference(getContext());
                     mNoDeviceFoundPreference.setLayoutResource(R.layout.preference_empty_list);
@@ -70,4 +70,3 @@
         notifyChanged();
     }
 }
-
diff --git a/src/com/android/settings/bluetooth/DevicePickerFragment.java b/src/com/android/settings/bluetooth/DevicePickerFragment.java
index 8b32941..87d31e7 100644
--- a/src/com/android/settings/bluetooth/DevicePickerFragment.java
+++ b/src/com/android/settings/bluetooth/DevicePickerFragment.java
@@ -33,6 +33,7 @@
     private boolean mNeedAuth;
     private String mLaunchPackage;
     private String mLaunchClass;
+    private boolean mStartScanOnResume;
 
     @Override
     void addPreferencesForActivity() {
@@ -50,13 +51,17 @@
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         getActivity().setTitle(getString(R.string.device_picker));
+        mStartScanOnResume = (savedInstanceState == null);  // don't start scan after rotation
     }
 
     @Override
     public void onResume() {
         super.onResume();
         addCachedDevices();
-        mLocalAdapter.startScanning(true);
+        if (mStartScanOnResume) {
+            mLocalAdapter.startScanning(true);
+            mStartScanOnResume = false;
+        }
     }
 
     @Override
diff --git a/src/com/android/settings/wifi/WifiConfigController.java b/src/com/android/settings/wifi/WifiConfigController.java
index 8d4e77b..0ecb8a9 100644
--- a/src/com/android/settings/wifi/WifiConfigController.java
+++ b/src/com/android/settings/wifi/WifiConfigController.java
@@ -33,8 +33,8 @@
 import android.net.wifi.WifiConfiguration.ProxySettings;
 import android.net.wifi.WifiConfiguration.Status;
 import android.net.wifi.WifiInfo;
-import android.net.wifi.WpsConfiguration;
-import android.net.wifi.WpsConfiguration.Setup;
+import android.net.wifi.Wps;
+import android.net.wifi.Wps.Setup;
 import android.security.Credentials;
 import android.security.KeyStore;
 import android.text.Editable;
@@ -484,8 +484,8 @@
         return MANUAL;
     }
 
-    WpsConfiguration getWpsConfig() {
-        WpsConfiguration config = new WpsConfiguration();
+    Wps getWpsConfig() {
+        Wps config = new Wps();
         switch (mNetworkSetupSpinner.getSelectedItemPosition()) {
             case WPS_PBC:
                 config.setup = Setup.PBC;
diff --git a/src/com/android/settings/wifi/p2p/WifiP2pDialog.java b/src/com/android/settings/wifi/p2p/WifiP2pDialog.java
index c345538..8c06168 100644
--- a/src/com/android/settings/wifi/p2p/WifiP2pDialog.java
+++ b/src/com/android/settings/wifi/p2p/WifiP2pDialog.java
@@ -19,8 +19,8 @@
 import android.app.AlertDialog;
 import android.content.Context;
 import android.content.DialogInterface;
-import android.net.wifi.WpsConfiguration;
-import android.net.wifi.WpsConfiguration.Setup;
+import android.net.wifi.Wps;
+import android.net.wifi.Wps.Setup;
 import android.net.wifi.p2p.WifiP2pConfig;
 import android.net.wifi.p2p.WifiP2pDevice;
 import android.os.Bundle;
@@ -64,21 +64,21 @@
     public WifiP2pConfig getConfig() {
         WifiP2pConfig config = new WifiP2pConfig();
         config.deviceAddress = mDeviceAddress.getText().toString();
-        config.wpsConfig = new WpsConfiguration();
+        config.wps = new Wps();
         switch (mWpsSetupIndex) {
             case WPS_PBC:
-                config.wpsConfig.setup = Setup.PBC;
+                config.wps.setup = Setup.PBC;
                 break;
             case WPS_KEYPAD:
-                config.wpsConfig.setup = Setup.KEYPAD;
-                config.wpsConfig.pin = ((TextView) mView.findViewById(R.id.wps_pin)).
+                config.wps.setup = Setup.KEYPAD;
+                config.wps.pin = ((TextView) mView.findViewById(R.id.wps_pin)).
                         getText().toString();
                 break;
             case WPS_DISPLAY:
-                config.wpsConfig.setup = Setup.DISPLAY;
+                config.wps.setup = Setup.DISPLAY;
                 break;
             default:
-                config.wpsConfig.setup = Setup.PBC;
+                config.wps.setup = Setup.PBC;
                 break;
         }
         return config;