diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 7b17d6d..6a19474 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -206,10 +206,6 @@
                 android:value="com.android.settings.wifi.AdvancedWifiSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wifi_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/wifi_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$WifiSettingsActivity" />
         </activity>
 
         <activity android:name=".wifi.WifiInfo"
@@ -331,10 +327,6 @@
                 android:value="com.android.settings.TetherSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wireless_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/wireless_networks_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$WirelessSettingsActivity" />
         </activity>
 
         <!-- Keep compatibility with old shortcuts. -->
@@ -347,10 +339,6 @@
                 android:value="com.android.settings.TetherSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wireless_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/wireless_networks_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$WirelessSettingsActivity" />
         </activity-alias>
 
         <activity android:name="Settings$WifiP2pSettingsActivity"
@@ -366,10 +354,6 @@
                 android:value="com.android.settings.wifi.p2p.WifiP2pSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wireless_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/wireless_networks_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$WirelessSettingsActivity" />
         </activity>
 
 
@@ -388,10 +372,6 @@
                 android:value="com.android.settings.vpn2.VpnSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/wireless_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/wireless_networks_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$WirelessSettingsActivity" />
         </activity>
 
         <activity android:name="Settings$DateTimeSettingsActivity"
@@ -490,10 +470,6 @@
                 android:value="com.android.settings.inputmethod.SpellCheckersSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/language_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/language_keyboard_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$InputMethodAndLanguageSettingsActivity" />
         </activity>
 
         <activity android:name=".inputmethod.InputMethodAndSubtypeEnablerActivity"
@@ -528,10 +504,6 @@
                 android:value="com.android.settings.inputmethod.UserDictionaryList" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/language_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/language_keyboard_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$InputMethodAndLanguageSettingsActivity" />
         </activity>
 
         <activity android:name=".inputmethod.UserDictionaryAddWordActivity"
@@ -557,10 +529,6 @@
                 android:value="com.android.settings.UserDictionarySettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/language_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/language_keyboard_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$InputMethodAndLanguageSettingsActivity" />
         </activity-alias>
 
         <activity android:name="Settings$SoundSettingsActivity"
@@ -944,10 +912,6 @@
                 android:value="com.android.settings.DeviceAdminSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/security_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/security_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$SecuritySettingsActivity" />
         </activity>
 
         <!-- Keep compatibility with old shortcuts. -->
@@ -959,10 +923,6 @@
                 android:value="com.android.settings.DeviceAdminSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/security_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/security_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$SecuritySettingsActivity" />
         </activity-alias>
 
         <activity android:name="DeviceAdminAdd"
@@ -1253,10 +1213,6 @@
                 android:value="com.android.settings.deviceinfo.UsbSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/storage_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/storage_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$StorageSettingsActivity" />
         </activity>
 
         <!-- Keep compatibility with old shortcuts. -->
@@ -1268,10 +1224,6 @@
                 android:value="com.android.settings.deviceinfo.UsbSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/storage_settings" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_TITLE"
-                android:resource="@string/storage_settings_title" />
-            <meta-data android:name="com.android.settings.PARENT_FRAGMENT_CLASS"
-                android:value="com.android.settings.Settings$StorageSettingsActivity" />
         </activity-alias>
 
         <!-- Bluetooth stuff -->
diff --git a/res/drawable-hdpi/password_field_default.9.png b/res/drawable-hdpi/password_field_default.9.png
deleted file mode 100644
index 2c424f0..0000000
--- a/res/drawable-hdpi/password_field_default.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-mdpi/password_field_default.9.png b/res/drawable-mdpi/password_field_default.9.png
deleted file mode 100644
index 3193275..0000000
--- a/res/drawable-mdpi/password_field_default.9.png
+++ /dev/null
Binary files differ
diff --git a/res/drawable-xhdpi/password_field_default.9.png b/res/drawable-xhdpi/password_field_default.9.png
deleted file mode 100644
index cf8329e..0000000
--- a/res/drawable-xhdpi/password_field_default.9.png
+++ /dev/null
Binary files differ
diff --git a/res/layout-land/choose_lock_password.xml b/res/layout-land/choose_lock_password.xml
index 08dcf64..74893c7 100644
--- a/res/layout-land/choose_lock_password.xml
+++ b/res/layout-land/choose_lock_password.xml
@@ -57,7 +57,6 @@
             android:layout_marginTop="5dip"
             android:layout_marginBottom="5dip"
             android:textAppearance="?android:attr/textAppearanceLarge"
-            android:background="@drawable/password_field_default"
             android:textColor="#ffffffff"
         />
     </LinearLayout>
diff --git a/res/layout-land/confirm_lock_password.xml b/res/layout-land/confirm_lock_password.xml
index 4130a48..604f766 100644
--- a/res/layout-land/confirm_lock_password.xml
+++ b/res/layout-land/confirm_lock_password.xml
@@ -58,7 +58,6 @@
             android:layout_marginTop="5dip"
             android:layout_marginBottom="5dip"
             android:textAppearance="?android:attr/textAppearanceLarge"
-            android:background="@drawable/password_field_default"
             android:textColor="#ffffffff"
         />
     </LinearLayout>
diff --git a/res/layout-sw600dp-land/choose_lock_password.xml b/res/layout-sw600dp-land/choose_lock_password.xml
index 05d4a24..fa54c14 100644
--- a/res/layout-sw600dp-land/choose_lock_password.xml
+++ b/res/layout-sw600dp-land/choose_lock_password.xml
@@ -58,7 +58,6 @@
             android:layout_marginTop="5dip"
             android:layout_marginBottom="5dip"
             android:textAppearance="?android:attr/textAppearanceLarge"
-            android:background="@drawable/password_field_default"
             android:textColor="#ffffffff"
         />
     </LinearLayout>
diff --git a/res/layout-sw600dp-land/confirm_lock_password.xml b/res/layout-sw600dp-land/confirm_lock_password.xml
index 5844a60..dc448db 100644
--- a/res/layout-sw600dp-land/confirm_lock_password.xml
+++ b/res/layout-sw600dp-land/confirm_lock_password.xml
@@ -59,7 +59,6 @@
             android:layout_marginTop="5dip"
             android:layout_marginBottom="5dip"
             android:textAppearance="?android:attr/textAppearanceLarge"
-            android:background="@drawable/password_field_default"
             android:textColor="#ffffffff"
         />
     </LinearLayout>
diff --git a/res/layout-sw600dp/choose_lock_password.xml b/res/layout-sw600dp/choose_lock_password.xml
index 43be032..b4b8294 100644
--- a/res/layout-sw600dp/choose_lock_password.xml
+++ b/res/layout-sw600dp/choose_lock_password.xml
@@ -30,15 +30,6 @@
         android:lines="2"
         android:textAppearance="?android:attr/textAppearanceLarge"/>
 
-    <!-- spacer above text entry field -->
-    <View
-        android:id="@+id/spacerBottom"
-        android:layout_width="fill_parent"
-        android:layout_height="1dip"
-        android:layout_marginTop="6dip"
-        android:background="@android:drawable/divider_horizontal_dark"
-    />
-
     <!-- Password entry field -->
     <EditText android:id="@+id/password_entry"
         android:layout_width="match_parent"
@@ -54,7 +45,6 @@
         android:layout_marginStart="30dip"
         android:layout_marginEnd="30dip"
         android:textAppearance="?android:attr/textAppearanceLarge"
-        android:background="@drawable/password_field_default"
         android:textColor="#ffffffff"
     />
 
diff --git a/res/layout-sw600dp/confirm_lock_password.xml b/res/layout-sw600dp/confirm_lock_password.xml
index cb6fafd..ff7c847 100644
--- a/res/layout-sw600dp/confirm_lock_password.xml
+++ b/res/layout-sw600dp/confirm_lock_password.xml
@@ -57,7 +57,6 @@
         android:layout_marginStart="30dip"
         android:layout_marginEnd="30dip"
         android:textAppearance="?android:attr/textAppearanceLarge"
-        android:background="@drawable/password_field_default"
         android:textColor="#ffffffff"
     />
 
diff --git a/res/layout/choose_lock_password.xml b/res/layout/choose_lock_password.xml
index 0c7c11b..59f7f9f 100644
--- a/res/layout/choose_lock_password.xml
+++ b/res/layout/choose_lock_password.xml
@@ -30,14 +30,6 @@
         android:lines="2"
         android:textAppearance="?android:attr/textAppearanceMedium"/>
 
-    <!-- spacer above text entry field -->
-    <View
-        android:id="@+id/spacerBottom"
-        android:layout_width="fill_parent"
-        android:layout_height="1dip"
-        android:background="@android:drawable/divider_horizontal_dark"
-    />
-
     <!-- Password entry field -->
     <EditText android:id="@+id/password_entry"
         android:layout_width="match_parent"
@@ -52,7 +44,6 @@
         android:layout_marginStart="30dip"
         android:layout_marginEnd="30dip"
         android:textAppearance="?android:attr/textAppearanceLarge"
-        android:background="@drawable/password_field_default"
         android:textColor="#ffffffff"
     />
 
diff --git a/res/layout/confirm_lock_password.xml b/res/layout/confirm_lock_password.xml
index b6c60c3..ad73681 100644
--- a/res/layout/confirm_lock_password.xml
+++ b/res/layout/confirm_lock_password.xml
@@ -33,15 +33,6 @@
         android:lines="2"
         android:textAppearance="?android:attr/textAppearanceLarge"/>
 
-    <!-- spacer above text entry field -->
-    <View
-        android:id="@+id/spacerBottom"
-        android:layout_width="fill_parent"
-        android:layout_height="1dip"
-        android:layout_marginTop="6dip"
-        android:background="@android:drawable/divider_horizontal_dark"
-    />
-
     <!-- Password entry field -->
     <EditText android:id="@+id/password_entry"
         android:layout_width="match_parent"
@@ -56,7 +47,6 @@
         android:layout_marginStart="30dip"
         android:layout_marginEnd="30dip"
         android:textAppearance="?android:attr/textAppearanceLarge"
-        android:background="@drawable/password_field_default"
         android:textColor="#ffffffff"
     />
 
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index 7c0c7b4..e94da8b 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -113,7 +113,7 @@
     <string name="bluetooth_is_discoverable" msgid="8373421452106840526">"Visible per a tots els dispositius Bluetooth propers (<xliff:g id="DISCOVERABLE_TIME_PERIOD">%1$s</xliff:g>)"</string>
     <string name="bluetooth_is_discoverable_always" msgid="2849387702249327748">"Visible per a tots els dispositius Bluetooth propers"</string>
     <string name="bluetooth_not_visible_to_other_devices" msgid="9120274591523391910">"Ocult per a altres dispositius Bluetooth"</string>
-    <string name="bluetooth_only_visible_to_paired_devices" msgid="2049983392373296028">"Només visible per als dispositius sincronitzats"</string>
+    <string name="bluetooth_only_visible_to_paired_devices" msgid="2049983392373296028">"Només visible per als dispositius emparellats"</string>
     <string name="bluetooth_visibility_timeout" msgid="8002247464357005429">"Temps de visibilitat"</string>
     <string name="bluetooth_lock_voice_dialing" msgid="3139322992062086225">"Bloqueja el marcatge per veu"</string>
     <string name="bluetooth_lock_voice_dialing_summary" msgid="4741338867496787042">"Impedeix l\'ús del marcador Bluetooth quan la pantalla estigui bloquejada"</string>
@@ -448,15 +448,15 @@
     <string name="bluetooth_settings_summary" msgid="2091062709530570462">"Gestiona les connexions, defineix el nom i la visibilitat del dispositiu"</string>
     <string name="bluetooth_pairing_request" msgid="6385750334766370310">"Sol·licitud d\'emparellament de Bluetooth"</string>
     <string name="bluetooth_enter_pin_msg" msgid="5698297871117529185">"Per emparellar amb:<xliff:g id="BOLD_0">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="DEVICE_NAME">%1$s</xliff:g><xliff:g id="END_BOLD">&lt;/b&gt;&lt;br&gt;&lt;br&gt;</xliff:g>Escriu el PIN sol·licitat pel dispositiu:"</string>
-    <string name="bluetooth_enter_passkey_msg" msgid="2220143735340367939">"Per emparellar amb:<xliff:g id="BOLD_0">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="DEVICE_NAME">%1$s</xliff:g><xliff:g id="END_BOLD">&lt;/b&gt;&lt;br&gt;&lt;br&gt;</xliff:g>Escriu la contrasenya que requereix el dispositiu:"</string>
+    <string name="bluetooth_enter_passkey_msg" msgid="2220143735340367939">"Per emparellar amb:<xliff:g id="BOLD_0">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="DEVICE_NAME">%1$s</xliff:g><xliff:g id="END_BOLD">&lt;/b&gt;&lt;br&gt;&lt;br&gt;</xliff:g>Escriu la contrasenya sol·licitada pel dispositiu:"</string>
     <string name="bluetooth_enable_alphanumeric_pin" msgid="7222713483058171357">"El PIN conté lletres o símbols"</string>
     <string name="bluetooth_pin_values_hint" msgid="3815897557875873646">"En general, 0000 o 1234"</string>
     <string name="bluetooth_enter_pin_other_device" msgid="4637977124526813470">"Pot ser que també hagis d\'introduir aquest PIN a l\'altre dispositiu."</string>
     <string name="bluetooth_enter_passkey_other_device" msgid="2798719004030279602">"Pot ser que també hagis d\'introduir aquesta contrasenya a l\'altre dispositiu."</string>
     <string name="bluetooth_confirm_passkey_msg" msgid="3708312912841950052">"Per emparellar amb:&lt;br&gt;&lt;b&gt;<xliff:g id="DEVICE_NAME">%1$s</xliff:g>&lt;/b&gt;&lt;br&gt;&lt;br&gt;Assegura\'t que apareix aquesta contrasenya:&lt;br&gt;&lt;b&gt;<xliff:g id="PASSKEY">%2$s</xliff:g>&lt;/b&gt;"</string>
     <string name="bluetooth_incoming_pairing_msg" msgid="1615930853859551491">"De:&lt;br&gt;&lt;b&gt;<xliff:g id="DEVICE_NAME">%1$s</xliff:g>&lt;/b&gt;&lt;br&gt;&lt;br&gt;Vols emparellar-lo amb aquest dispositiu?"</string>
-    <string name="bluetooth_display_passkey_pin_msg" msgid="2796550001376088433">"Per sincronitzar amb:<xliff:g id="BOLD1_0">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="DEVICE_NAME">%1$s</xliff:g><xliff:g id="END_BOLD1">&lt;/b&gt;&lt;br&gt;&lt;br&gt;</xliff:g>Escriu-hi:<xliff:g id="BOLD2_1">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="PASSKEY">%2$s</xliff:g><xliff:g id="END_BOLD2">&lt;/b&gt;</xliff:g> i, a continuació, prem la tecla de retorn."</string>
-    <string name="bluetooth_pairing_accept" msgid="6163520056536604875">"Sincronitza"</string>
+    <string name="bluetooth_display_passkey_pin_msg" msgid="2796550001376088433">"Per sincronitzar amb:<xliff:g id="BOLD1_0">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="DEVICE_NAME">%1$s</xliff:g><xliff:g id="END_BOLD1">&lt;/b&gt;&lt;br&gt;&lt;br&gt;</xliff:g>Escriu <xliff:g id="BOLD2_1">&lt;br&gt;&lt;b&gt;</xliff:g><xliff:g id="PASSKEY">%2$s</xliff:g><xliff:g id="END_BOLD2">&lt;/b&gt;</xliff:g> en el dispositiu i, a continuació, prem la tecla de retorn."</string>
+    <string name="bluetooth_pairing_accept" msgid="6163520056536604875">"Emparella"</string>
     <string name="bluetooth_pairing_decline" msgid="4185420413578948140">"Cancel·la"</string>
     <string name="bluetooth_error_title" msgid="6850384073923533096"></string>
     <string name="bluetooth_pairing_error_message" msgid="3748157733635947087">"No s\'ha pogut emparellar amb <xliff:g id="DEVICE_NAME">%1$s</xliff:g>."</string>
@@ -468,7 +468,7 @@
     <string name="bluetooth_search_for_devices" msgid="5957007154213560390">"Cerca dispositius"</string>
     <string name="bluetooth_searching_for_devices" msgid="9203739709307871727">"S\'està cercant..."</string>
     <string name="bluetooth_preference_device_settings" msgid="907776049862799122">"Configuració del dispositiu"</string>
-    <string name="bluetooth_preference_paired_devices" msgid="1970524193086791964">"Dispositius sincronitzats"</string>
+    <string name="bluetooth_preference_paired_devices" msgid="1970524193086791964">"Dispositius emparellats"</string>
     <string name="bluetooth_preference_found_devices" msgid="1647983835063249680">"Dispositius disponibles"</string>
     <string name="bluetooth_device_context_connect" msgid="3997659895003244941">"Connecta"</string>
     <string name="bluetooth_device_context_disconnect" msgid="8220072022970148683">"Desconnecta"</string>
@@ -493,7 +493,7 @@
     <string name="bluetooth_disconnect_pan_user_profile" msgid="8037627994382458698">"L\'accés a Internet mitjançant <xliff:g id="DEVICE_NAME">%1$s</xliff:g> es desconnectarà."</string>
     <string name="bluetooth_disconnect_pan_nap_profile" product="tablet" msgid="5455448395850929200">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> es desconnectarà de la compartició de la connexió a Internet de la tauleta."</string>
     <string name="bluetooth_disconnect_pan_nap_profile" product="default" msgid="5266851881175033601">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> es desconnectarà de la compartició de la connexió a Internet del telèfon."</string>
-    <string name="bluetooth_device_advanced_title" msgid="6066342531927499308">"Dispositiu Bluetooth sincronitzat"</string>
+    <string name="bluetooth_device_advanced_title" msgid="6066342531927499308">"Dispositiu Bluetooth emparellat"</string>
     <string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"Connecta"</string>
     <string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"Connecta\'t al dispositiu Bluetooth"</string>
     <string name="bluetooth_device_advanced_profile_header_title" msgid="3764437426089639639">"Perfils"</string>
@@ -1038,7 +1038,7 @@
     <string name="regulatory_information" msgid="5695464367088752150">"Informació de regulació"</string>
     <string name="copyright_title" msgid="865906688917260647">"Copyright"</string>
     <string name="license_title" msgid="1990487604356037871">"Llicència"</string>
-    <string name="terms_title" msgid="7697580845616764642">"Condicions del servei"</string>
+    <string name="terms_title" msgid="7697580845616764642">"Termes i condicions"</string>
     <string name="settings_license_activity_title" msgid="7553683406244228650">"Llicències de codi obert"</string>
     <string name="settings_license_activity_unavailable" msgid="4210539215951487627">"S\'ha produït un problema en llegir les llicències."</string>
     <string name="settings_license_activity_loading" msgid="3337535809093591740">"S\'està carregant…"</string>
@@ -2064,15 +2064,15 @@
     <string name="user_image_choose_photo" msgid="7940990613897477057">"Selecciona una foto de la galeria"</string>
     <string name="regulatory_info_text" msgid="5623087902354026557"></string>
     <string name="lock_settings_nfc_title" msgid="33998875572836425">"Configuració de bloqueig de pantalla de NFC"</string>
-    <string name="nfc_unlock_paired_tags_title" msgid="3837232675294949824">"Etiquetes sincronitzades"</string>
+    <string name="nfc_unlock_paired_tags_title" msgid="3837232675294949824">"Etiquetes emparellades"</string>
     <string name="nfc_unlock_enabled" msgid="7306199149460932989">"Activat"</string>
-    <string name="start_nfc_pairing" msgid="5363319136364735698">"Sincronitza amb una etiqueta"</string>
+    <string name="start_nfc_pairing" msgid="5363319136364735698">"Emparella amb una etiqueta"</string>
     <string name="title_activity_nfc_pairing" msgid="6821817665260628279">"NfcPairingActivity"</string>
-    <string name="pairing_button_title" msgid="7411638037556429744">"Sincronitza ara"</string>
+    <string name="pairing_button_title" msgid="7411638037556429744">"Emparella ara"</string>
     <string name="status_no_ring_detected" msgid="838954925249421062">"Posa l\'etiqueta plana en una taula i col·loca el telèfon a sobre."</string>
-    <string name="status_device_paired" msgid="4916932520416516526">"L\'etiqueta i el telèfon s\'han sincronitzat correctament. Llestos."</string>
+    <string name="status_device_paired" msgid="4916932520416516526">"L\'etiqueta i el telèfon s\'han emparellat correctament. Llestos."</string>
     <string name="status_error_invalid_device" msgid="5045003971535647259">"L\'etiqueta que has proporcionat no es pot utilitzar per desbloquejar el telèfon."</string>
-    <string name="status_error_pairing_failed" msgid="8260473909085202868">"S\'ha produït un error amb la sincronització de l\'etiqueta. Torna-ho a provar."</string>
+    <string name="status_error_pairing_failed" msgid="8260473909085202868">"S\'ha produït un error en emparellar l\'etiqueta. Torna-ho a provar."</string>
     <string name="enable_nfc" msgid="5234514241098808766">"L\'NFC no està activada i és necessària per desbloquejar la pantalla mitjançant NFC. Activa-la."</string>
     <string name="ok" msgid="3651563352754792958">"Configuració de NFC"</string>
 </resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index f5af874..8a14ddd 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -697,8 +697,8 @@
     <string name="notification_sound_title" msgid="5137483249425507572">"Standardlyd for underretninger"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Blinkende meddelelseslys"</string>
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringetone"</string>
-    <string name="notification_volume_title" msgid="2012640760341080408">"Meddelelse"</string>
-    <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Brug lydstyrke for indgående opkald til meddelelser"</string>
+    <string name="notification_volume_title" msgid="2012640760341080408">"Underretning"</string>
+    <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Brug lydstyrke for indgående opkald til underretninger"</string>
     <string name="notification_sound_dialog_title" msgid="3805140135741385667">"Standardlyd for underretninger"</string>
     <string name="media_volume_title" msgid="3576565767317118106">"Medier"</string>
     <string name="media_volume_summary" msgid="5363248930648849974">"Angiv lydstyrke for musik og videoer"</string>
@@ -710,12 +710,12 @@
     <string name="haptic_feedback_enable_title" msgid="2438293710530828760">"Vibrer ved berøring"</string>
     <string name="audio_record_proc_title" msgid="4271091199976457534">"Støjdæmpning"</string>
     <string name="volume_media_description" msgid="7949355934788807863">"Musik, video, spil og andre medier"</string>
-    <string name="volume_ring_description" msgid="5936851631698298989">"Ringetone og meddelelser"</string>
+    <string name="volume_ring_description" msgid="5936851631698298989">"Ringetone og underretninger"</string>
     <string name="volume_notification_description" msgid="5810902320215328321">"Underretninger"</string>
     <string name="volume_alarm_description" msgid="8322615148532654841">"Alarmer"</string>
-    <string name="volume_ring_mute" msgid="3018992671608737202">"Slå lyden fra for ringetone og meddelelser"</string>
+    <string name="volume_ring_mute" msgid="3018992671608737202">"Slå lyden fra for ringetone og underretninger"</string>
     <string name="volume_media_mute" msgid="3399059928695998166">"Slå lyden fra for musik og andre medier"</string>
-    <string name="volume_notification_mute" msgid="7955193480006444159">"Slå lyden fra for meddelelser"</string>
+    <string name="volume_notification_mute" msgid="7955193480006444159">"Slå lyden fra for underretninger"</string>
     <string name="volume_alarm_mute" msgid="4452239420351035936">"Slå lyden fra for alarmer"</string>
     <string name="vibrate_when_ringing_title" msgid="3885857358303178029">"Vibrer ved opringning"</string>
     <string name="dock_settings" msgid="1820107306693002541">"Dockingstation"</string>
@@ -1201,8 +1201,8 @@
     <string name="app_disable_dlg_text" msgid="3562567756362627323">"Hvis du deaktiverer en indbygget app, kan det medføre, at andre apps ikke fungerer korrekt."</string>
     <string name="app_special_disable_dlg_title" msgid="2690148680327142674">"Vil du slette data og deaktivere appen?"</string>
     <string name="app_special_disable_dlg_text" msgid="3447657419284854195">"Hvis du deaktiverer en indbygget app, er det muligt, at andre apps ikke makker ret. Dine data vil også blive slettet."</string>
-    <string name="app_disable_notifications_dlg_title" msgid="7669264654851761857">"Vil du deaktivere meddelelser?"</string>
-    <string name="app_disable_notifications_dlg_text" msgid="5088484670924769845">"Hvis du deaktiverer meddelelser for denne app, kan du gå glip af vigtige beskeder og opdateringer."</string>
+    <string name="app_disable_notifications_dlg_title" msgid="7669264654851761857">"Vil du deaktivere underretninger?"</string>
+    <string name="app_disable_notifications_dlg_text" msgid="5088484670924769845">"Hvis du deaktiverer underretninger for denne app, kan du gå glip af vigtige beskeder og opdateringer."</string>
     <string name="app_ops_settings" msgid="5108481883575527511">"Handlinger i app"</string>
     <string name="app_ops_running" msgid="7706949900637284122">"Kører"</string>
     <string name="app_ops_never_used" msgid="9114608022906887802">"(Aldrig brugt)"</string>
@@ -2027,7 +2027,7 @@
     <string name="global_change_warning" product="default" msgid="2461264421590324675">"Denne indstilling påvirker alle brugere på denne telefon."</string>
     <string name="global_locale_change_title" msgid="5956281361384221451">"Skift sprog"</string>
     <string name="global_font_change_title" msgid="1887126466191012035">"Skift skriftstørrelse"</string>
-    <string name="nfc_payment_settings_title" msgid="1807298287380821613">"Peg og betal"</string>
+    <string name="nfc_payment_settings_title" msgid="1807298287380821613">"Tryk og betal"</string>
     <string name="nfc_payment_no_apps" msgid="2481080809791416010">"Betal med et enkelt tryk"</string>
     <string name="nfc_payment_learn_more" msgid="5583407773744324447">"Få flere oplysninger"</string>
     <string name="nfc_payment_menu_item_add_service" msgid="2885947408068969081">"Find apps"</string>
@@ -2037,7 +2037,7 @@
     <string name="restriction_settings_title" msgid="4233515503765879736">"Begrænsninger"</string>
     <string name="restriction_menu_reset" msgid="2067644523489568173">"Fjern begrænsninger"</string>
     <string name="restriction_menu_change_pin" msgid="740081584044302775">"Skift pinkode"</string>
-    <string name="app_notifications_switch_label" msgid="9124072219553687583">"Vis meddelelser"</string>
+    <string name="app_notifications_switch_label" msgid="9124072219553687583">"Vis underretninger"</string>
     <string name="help_label" msgid="1107174367904110532">"Hjælp"</string>
     <string name="user_account_title" msgid="1127193807312271167">"Konto til indhold"</string>
     <string name="user_picture_title" msgid="7297782792000291692">"Foto-id"</string>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index d0f8278..fb5b249 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -89,7 +89,7 @@
     <string name="battery_info_awake_plugged" msgid="176716874713478188">"Aktivzeit beim Laden:"</string>
     <string name="battery_info_screen_on" msgid="376277447175613889">"Display eingeschaltet:"</string>
     <string name="battery_info_status_unknown" msgid="196130600938058547">"Unbekannt"</string>
-    <string name="battery_info_status_charging" msgid="1705179948350365604">"Wird geladen"</string>
+    <string name="battery_info_status_charging" msgid="1705179948350365604">"Wird aufgeladen"</string>
     <string name="battery_info_status_charging_ac" msgid="5874340256342956252">"(AC)"</string>
     <string name="battery_info_status_charging_usb" msgid="4059070156126770959">"(USB)"</string>
     <string name="battery_info_status_charging_wireless" msgid="1822125795446772771">"(drahtlos)"</string>
@@ -140,7 +140,7 @@
     <string name="bluetooth_disconnecting" msgid="8913264760027764974">"Verbindung wird getrennt..."</string>
     <string name="bluetooth_connecting" msgid="8555009514614320497">"Verbindung wird hergestellt..."</string>
     <string name="bluetooth_unknown" msgid="644716244548801421"></string>
-    <string name="bluetooth_pairing" msgid="1426882272690346242">"Kopplung läuft…"</string>
+    <string name="bluetooth_pairing" msgid="1426882272690346242">"Pairing läuft…"</string>
     <string name="bluetooth_device" msgid="5291950341750186887">"Unbenanntes Bluetooth-Gerät"</string>
     <string name="progress_scanning" msgid="192587958424295789">"Suche läuft"</string>
     <string name="bluetooth_no_devices_found" msgid="1085232930277181436">"Kein Bluetooth-Gerät in der Nähe gefunden"</string>
@@ -1431,7 +1431,7 @@
     <string name="captioning_foreground_opacity" msgid="4370967856995419788">"Texttransparenz"</string>
     <string name="captioning_edge_color" msgid="3670094753735263238">"Rahmenfarbe"</string>
     <string name="captioning_edge_type" msgid="5997247394951682154">"Rahmentyp"</string>
-    <string name="captioning_typeface" msgid="1826169240566563259">"Schriftart"</string>
+    <string name="captioning_typeface" msgid="1826169240566563259">"Schriftfamilie"</string>
     <string name="captioning_preview_text" msgid="4067935959797375065">"Untertitel sehen so aus."</string>
     <string name="captioning_preview_characters" msgid="7105909138497851769">"Aa"</string>
     <string name="locale_default" msgid="2593883646136326969">"Standard"</string>
@@ -1488,7 +1488,7 @@
     <string name="battery_since_reset" msgid="7464546661121187045">"Akkuverbrauch seit dem Zurücksetzen"</string>
     <string name="battery_stats_on_battery" msgid="4970762168505236033">"<xliff:g id="TIME">%1$s</xliff:g> mit Akku"</string>
     <string name="battery_stats_duration" msgid="7464501326709469282">"<xliff:g id="TIME">%1$s</xliff:g> seit dem Ausstecken"</string>
-    <string name="battery_stats_charging_label" msgid="4223311142875178785">"Wird geladen..."</string>
+    <string name="battery_stats_charging_label" msgid="4223311142875178785">"Wird aufgeladen..."</string>
     <string name="battery_stats_screen_on_label" msgid="7150221809877509708">"Bildschirm an"</string>
     <string name="battery_stats_gps_on_label" msgid="1193657533641951256">"GPS aktiv"</string>
     <string name="battery_stats_wifi_running_label" msgid="1845839195549226252">"WLAN"</string>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index a6fa5d5..bcde25c 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -1764,7 +1764,7 @@
     <string name="sync_menu_sync_cancel" msgid="8292379009626966949">"Annuler la synchronisation"</string>
     <string name="sync_one_time_sync" msgid="6766593624598183090">"Appuyez ici pour lancer la synchronisation<xliff:g id="LAST_SYNC_TIME">
 %1$s</xliff:g>"</string>
-    <string name="sync_gmail" msgid="714886122098006477">"GMAIL"</string>
+    <string name="sync_gmail" msgid="714886122098006477">"Gmail"</string>
     <string name="sync_calendar" msgid="9056527206714733735">"# CALENDAR:"</string>
     <string name="sync_contacts" msgid="9174914394377828043">"Contacts"</string>
     <string name="sync_plug" msgid="3905078969081888738"><font fgcolor="#ffffffff">"Bienvenue sur Google Sync!"</font>\n"Une solution Google pour synchroniser vos données et vous permettre d\'accéder à vos contacts, vos rendez-vous et plus, où que vous soyez."</string>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 9dc4a82..106ff16 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -1424,8 +1424,8 @@
     <string name="captioning_custom_options_title" msgid="5067500939930322405">"Prilagođene opcije"</string>
     <string name="captioning_background_color" msgid="9053011212948992570">"Boja pozadine"</string>
     <string name="captioning_background_opacity" msgid="6029993616419971202">"Zasjenjenost pozadine"</string>
-    <string name="captioning_window_color" msgid="6902052743419717394">"Boja okvira titlova"</string>
-    <string name="captioning_window_opacity" msgid="5041556024849862376">"Neprozirnost okvira titlova"</string>
+    <string name="captioning_window_color" msgid="6902052743419717394">"Boja pozadine titlova"</string>
+    <string name="captioning_window_opacity" msgid="5041556024849862376">"Neprozirnost pozadine titlova"</string>
     <string name="captioning_foreground_color" msgid="85623486537640059">"Boja teksta"</string>
     <string name="captioning_foreground_opacity" msgid="4370967856995419788">"Neprozirnost teksta"</string>
     <string name="captioning_edge_color" msgid="3670094753735263238">"Boja ruba"</string>
diff --git a/res/values-km-rKH/arrays.xml b/res/values-km-rKH/arrays.xml
index 035d241..b5ba344 100644
--- a/res/values-km-rKH/arrays.xml
+++ b/res/values-km-rKH/arrays.xml
@@ -137,7 +137,7 @@
     <item msgid="3189211552661432651">"បាន​​អញ្ជើញ"</item>
     <item msgid="3206450250360237549">"បរាជ័យ"</item>
     <item msgid="7785896708926971207">"មាន"</item>
-    <item msgid="2330782789550628803">"ក្រៅ​ជួរ"</item>
+    <item msgid="2330782789550628803">"ក្រៅ​តំបន់"</item>
   </string-array>
   <string-array name="bluetooth_visibility_timeout_entries">
     <item msgid="8151962652413645395">"២ នាទី"</item>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index 45875cf..d4eb867 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -620,7 +620,7 @@
     <string name="wifi_disabled_generic" msgid="4259794910584943386">"បាន​បិទ"</string>
     <string name="wifi_disabled_network_failure" msgid="3111321240793227690">"បាន​រារាំង​ការ​តភ្ជាប់​អ៊ីនធឺណិត​មិន​ល្អ"</string>
     <string name="wifi_disabled_password_failure" msgid="8659805351763133575">"បញ្ហា​ក្នុង​ការ​ផ្ទៀងផ្ទាត់"</string>
-    <string name="wifi_not_in_range" msgid="1136191511238508967">"មិន​នៅ​ក្នុង​ជួរ"</string>
+    <string name="wifi_not_in_range" msgid="1136191511238508967">"មិន​នៅ​ក្នុង​តំបន់"</string>
     <string name="wifi_wps_available_first_item" msgid="4422547079984583502">"WPS អាច​ប្រើ​បាន"</string>
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (មាន WPS)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"មាន​សុវត្ថិភាព​ជា​មួយ <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
@@ -646,7 +646,7 @@
     <string name="wifi_connect_failed_message" product="default" msgid="2185803140161396572">"ទូរស័ព្ទ​មិន​អាច​តភ្ជាប់​ទៅ​បណ្ដាញ​វ៉ាយហ្វាយ​នេះ"</string>
     <string name="wifi_advanced_titlebar" msgid="4485841401774142908">"វ៉ាយហ្វាយ​កម្រិត​ខ្ពស់"</string>
     <string name="wifi_setting_frequency_band_title" msgid="3655327399028584656">"ក្រុម​ហ្វ្រេកង់​វ៉ាយហ្វាយ"</string>
-    <string name="wifi_setting_frequency_band_summary" msgid="3250740757118009784">"បញ្ជាក់​ជួរ​ប្រេកង់​នៃ​ប្រតិបត្តិ​ការ"</string>
+    <string name="wifi_setting_frequency_band_summary" msgid="3250740757118009784">"បញ្ជាក់​តំបន់​ប្រេកង់​នៃ​ប្រតិបត្តិការ"</string>
     <string name="wifi_setting_frequency_band_error" msgid="837281974489794378">"មាន​បញ្ហា​ក្នុង​ការ​កំណត់​ក្រុម​ប្រេកង់។"</string>
     <string name="wifi_advanced_mac_address_title" msgid="6571335466330978393">"អាសយដ្ឋាន MAC"</string>
     <string name="wifi_advanced_ip_address_title" msgid="6215297094363164846">"អាសយដ្ឋាន IP"</string>
@@ -1009,8 +1009,8 @@
     <string name="location_category_recent_location_requests" msgid="1938721350424447421">"សំណើ​ទីតាំង​ថ្មី"</string>
     <string name="location_no_recent_apps" msgid="2800907699722178041">"បច្ចុប្បន្ន​គ្មាន​កម្មវិធី​បាន​ស្នើ​ទីតាំង"</string>
     <string name="location_category_location_services" msgid="7437150886946685979">"សេវាកម្ម​ទីតាំង"</string>
-    <string name="location_high_battery_use" msgid="517199943258508020">"ការ​ប្រើ​ប្រាស់​ថ្ម​​​ខ្លាំង"</string>
-    <string name="location_low_battery_use" msgid="8602232529541903596">"ការ​ប្រើប្រាស់​ជិត​អស់​ថ្ម"</string>
+    <string name="location_high_battery_use" msgid="517199943258508020">"ប្រើ​ថ្ម​ច្រើន"</string>
+    <string name="location_low_battery_use" msgid="8602232529541903596">"​ប្រើ​ថ្ម​តិច"</string>
     <string name="location_mode_screen_title" msgid="4528716772270246542">"របៀបកំណត់​ទីតាំង"</string>
     <string name="location_mode_high_accuracy_description" msgid="6418936349431602808">"ប្រើជីភីអេស, ហ្វាយវ៉ាយ និង​​បណ្ដាញ​​ចល័ត​ដើម្បី​កំណត់​ទីតាំង"</string>
     <string name="location_mode_battery_saving_description" msgid="1728668969743485109">"ប្រើ​ហ្វាយវ៉ាយ ​និង​​បណ្ដាញ​​ចល័ត​ដើម្បី​​កំណត់​​ទីតាំង"</string>
diff --git a/res/values-lt/arrays.xml b/res/values-lt/arrays.xml
index c2cb6db..56b2cd9 100644
--- a/res/values-lt/arrays.xml
+++ b/res/values-lt/arrays.xml
@@ -351,7 +351,7 @@
   <string-array name="captioning_edge_type_selector_titles">
     <item msgid="6022616153255438487">"Nėra"</item>
     <item msgid="1352974708028506778">"Išdėstymas"</item>
-    <item msgid="5850876295428722675">"Viršuje esančio objekto šešėlis"</item>
+    <item msgid="5850876295428722675">"Krintantis šešėlis"</item>
     <item msgid="4620283365518546731">"Iškilus"</item>
     <item msgid="6395808180998856466">"Įdubęs"</item>
   </string-array>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 28947e2..0c9e1f3 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -277,7 +277,7 @@
     <string name="airplane_mode" msgid="8837269988154128601">"Lėktuvo režimas"</string>
     <string name="radio_controls_title" msgid="6889937359495515769">"Daugiau…"</string>
     <string name="wireless_networks_settings_title" msgid="3643009077742794212">"Bevielis ryšys ir tinklai"</string>
-    <string name="radio_controls_summary" msgid="1838624369870907268">"Tvarkyti „Wi-Fi“, „Bluetooth“, lėktuvo režimą, mobiliuosius tinklus ir VPN"</string>
+    <string name="radio_controls_summary" msgid="1838624369870907268">"Tvarkyti „Wi-Fi“, „Bluetooth“, lėktuvo režimą, mobiliojo ryšio tinklus ir VPN"</string>
     <string name="roaming" msgid="3596055926335478572">"Tarptinklinis duomenų ryšys"</string>
     <string name="roaming_enable" msgid="3737380951525303961">"Veikiant tarptinkliniam ryšiui, prisijungti prie duomenų paslaugų"</string>
     <string name="roaming_disable" msgid="1295279574370898378">"Veikiant tarptinkliniam ryšiui, prisijungti prie duomenų paslaugų"</string>
@@ -990,7 +990,7 @@
     <string name="bluetooth_tethering_overflow_error" msgid="6285122039489881969">"Negalima daugiau nei <xliff:g id="MAXCONNECTION">%1$d</xliff:g> įrenginių (-io) naudoti kaip modemo (-ų)."</string>
     <string name="bluetooth_untether_blank" msgid="2871192409329334813">"„<xliff:g id="DEVICE_NAME">%1$s</xliff:g>“ bus atsietas."</string>
     <string name="tethering_help_button_text" msgid="656117495547173630">"Pagalba"</string>
-    <string name="network_settings_title" msgid="7967552516440151852">"Mobilūs tinklai"</string>
+    <string name="network_settings_title" msgid="7967552516440151852">"Mobiliojo ryšio tinklai"</string>
     <string name="manage_mobile_plan_title" msgid="7630170375010107744">"Mobiliojo ryšio planas"</string>
     <string name="sms_application_title" msgid="6134351177937015839">"Numatytoji SMS programa"</string>
     <string name="sms_change_default_dialog_title" msgid="1958688831875804286">"Pakeisti SMS programą?"</string>
@@ -1879,10 +1879,10 @@
     <string name="data_usage_enable_4g" msgid="3635854097335036738">"4G duomenys"</string>
     <string name="data_usage_app_settings" msgid="8430240158135453271">"Žiūrėti programos nustatymus"</string>
     <string name="data_usage_app_restrict_background" msgid="9149728936265100841">"Fono duomenų ribojimas"</string>
-    <string name="data_usage_app_restrict_background_summary" msgid="518658001418490405">"Nel. fon. duom. mob. tinkl. Ne mob. tinkl. bus naud., jei pas."</string>
+    <string name="data_usage_app_restrict_background_summary" msgid="518658001418490405">"Nel. fon. duom. mob. r. tinkl. Ne mob. r. tinkl. bus naud., jei pas."</string>
     <string name="data_usage_app_restrict_background_summary_disabled" msgid="7401927377070755054">"Kad aprib. šios progr. fon. duom., pirm. nustat. mob. duom. apr."</string>
     <string name="data_usage_app_restrict_dialog_title" msgid="1613108390242737923">"Apriboti foninius duomenis?"</string>
-    <string name="data_usage_app_restrict_dialog" msgid="1466689968707308512">"Dėl šios funkcijos, kai pasiekiami tik mobilieji tinklai, gali neveikti programos, kurių veikimas priklauso nuo foninių duomenų.\n\nProgramos nustatymuose galite rasti tinkamesnių duomenų naudojimo valdiklių."</string>
+    <string name="data_usage_app_restrict_dialog" msgid="1466689968707308512">"Dėl šios funkcijos, kai pasiekiami tik mobiliojo ryšio tinklai, gali neveikti programos, kurių veikimas priklauso nuo foninių duomenų.\n\nProgramos nustatymuose galite rasti tinkamesnių duomenų naudojimo valdiklių."</string>
     <string name="data_usage_restrict_denied_dialog" msgid="7086969103661420799">"Apriboti foninius duomenis galima tik nustačius mobiliojo ryšio duomenų apribojimą."</string>
     <string name="data_usage_auto_sync_on_dialog_title" msgid="2438617846762244389">"Įjungti autom. sinchronizavimą?"</string>
     <string name="data_usage_auto_sync_on_dialog" product="tablet" msgid="7312283529426636845">"Bet kokie paskyrų pakeitimai, kuriuos atliekate žiniatinklyje, bus automatiškai nukopijuoti į planšetinį kompiuterį.\n\nIš kai kurių paskyrų į žiniatinklį gali būti automatiškai kopijuojami visi planšetiniame kompiuteryje atlikti pakeitimai. Taip pat daroma ir „Google“ paskyroje.\n\nJei norite pasirinkti, kokią kiekvienos paskyros informaciją sinchronizuoti, eikite į „Nustatymai“ &gt; „Paskyros“."</string>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index cf20b29..f1ada6e 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -1099,7 +1099,7 @@
     <string name="verify_applications_summary" msgid="6737505521913263792">"Forby eller advar før installasjon av apper som kan være skadelige"</string>
     <string name="advanced_settings" msgid="1777249286757067969">"Avanserte innstillinger"</string>
     <string name="advanced_settings_summary" msgid="4016682978071086747">"Aktiver flere innstillingsalternativer"</string>
-    <string name="application_info_label" msgid="5736524913065714880">"Info om app"</string>
+    <string name="application_info_label" msgid="5736524913065714880">"Info om appen"</string>
     <string name="storage_label" msgid="8700867073480107253">"Lagring"</string>
     <string name="auto_launch_label" msgid="3012617472833815382">"Start som standard"</string>
     <string name="auto_launch_label_generic" msgid="3230569852551968694">"Standardinnstillinger"</string>
@@ -1424,8 +1424,8 @@
     <string name="captioning_custom_options_title" msgid="5067500939930322405">"Tilpassede alternativer"</string>
     <string name="captioning_background_color" msgid="9053011212948992570">"Bakgrunnsfarge"</string>
     <string name="captioning_background_opacity" msgid="6029993616419971202">"Bakgrunnsopasitet"</string>
-    <string name="captioning_window_color" msgid="6902052743419717394">"Vindusfarge for bildetekst"</string>
-    <string name="captioning_window_opacity" msgid="5041556024849862376">"Opasitet på vindu for bildetekst"</string>
+    <string name="captioning_window_color" msgid="6902052743419717394">"Farge på tekstvinduet"</string>
+    <string name="captioning_window_opacity" msgid="5041556024849862376">"Opasitet for tekstvinduet"</string>
     <string name="captioning_foreground_color" msgid="85623486537640059">"Tekstfarge"</string>
     <string name="captioning_foreground_opacity" msgid="4370967856995419788">"Tekstopasitet"</string>
     <string name="captioning_edge_color" msgid="3670094753735263238">"Kantfarge"</string>
@@ -1527,7 +1527,7 @@
     <string name="usage_type_on_time" msgid="3351200096173733159">"Tid på"</string>
     <string name="usage_type_no_coverage" msgid="3797004252954385053">"Tid uten signal"</string>
     <string name="battery_action_stop" msgid="649958863744041872">"Tving avslutning"</string>
-    <string name="battery_action_app_details" msgid="7861051816778419018">"Info om app"</string>
+    <string name="battery_action_app_details" msgid="7861051816778419018">"Info om appen"</string>
     <string name="battery_action_app_settings" msgid="4570481408106287454">"Innstillinger for app"</string>
     <string name="battery_action_display" msgid="7338551244519110831">"Skjerminnstillinger"</string>
     <string name="battery_action_wifi" msgid="8181553479021841207">"Innstillinger for Wi-Fi"</string>
diff --git a/res/values-pt/arrays.xml b/res/values-pt/arrays.xml
index edcf557..fcacb1d 100644
--- a/res/values-pt/arrays.xml
+++ b/res/values-pt/arrays.xml
@@ -331,9 +331,16 @@
     <item msgid="2560532955514699713">"Médio"</item>
     <item msgid="2372711992605524591">"Longo"</item>
   </string-array>
-    <!-- no translation found for captioning_typeface_selector_titles:5 (6857338041963571301) -->
-    <!-- no translation found for captioning_typeface_selector_titles:6 (961716102408512888) -->
-    <!-- no translation found for captioning_typeface_selector_titles:7 (784581717183349567) -->
+  <string-array name="captioning_typeface_selector_titles">
+    <item msgid="1319652728542138112">"Padrão"</item>
+    <item msgid="1016452621833735880">"Sans-serif"</item>
+    <item msgid="2496277987934654454">"Sans-serif condensado"</item>
+    <item msgid="4406003087391086325">"Serif"</item>
+    <item msgid="1558362802170124073">"Espaçamento uniforme"</item>
+    <item msgid="6857338041963571301">"Casual"</item>
+    <item msgid="961716102408512888">"Cursiva"</item>
+    <item msgid="784581717183349567">"Maiúsculas pequenas"</item>
+  </string-array>
   <string-array name="captioning_font_size_selector_titles">
     <item msgid="4800919809575254054">"Muito pequeno"</item>
     <item msgid="6781094565687692782">"Pequeno"</item>
@@ -341,8 +348,13 @@
     <item msgid="5813217276778560466">"Grande"</item>
     <item msgid="9044232017390975191">"Muito grande"</item>
   </string-array>
-    <!-- no translation found for captioning_edge_type_selector_titles:3 (4620283365518546731) -->
-    <!-- no translation found for captioning_edge_type_selector_titles:4 (6395808180998856466) -->
+  <string-array name="captioning_edge_type_selector_titles">
+    <item msgid="6022616153255438487">"Nenhum"</item>
+    <item msgid="1352974708028506778">"Contorno"</item>
+    <item msgid="5850876295428722675">"Sombra"</item>
+    <item msgid="4620283365518546731">"Aumentada"</item>
+    <item msgid="6395808180998856466">"Reduzida"</item>
+  </string-array>
   <string-array name="captioning_opacity_selector_titles">
     <item msgid="7622491218136667566">"25%"</item>
     <item msgid="2367156416247936773">"50%"</item>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 48daf09..d02cd46 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -1424,10 +1424,8 @@
     <string name="captioning_custom_options_title" msgid="5067500939930322405">"Opções de personalização"</string>
     <string name="captioning_background_color" msgid="9053011212948992570">"Cor do plano de fundo"</string>
     <string name="captioning_background_opacity" msgid="6029993616419971202">"Opacidade do plano de fundo"</string>
-    <!-- no translation found for captioning_window_color (6902052743419717394) -->
-    <skip />
-    <!-- no translation found for captioning_window_opacity (5041556024849862376) -->
-    <skip />
+    <string name="captioning_window_color" msgid="6902052743419717394">"Cor da janela de legendas"</string>
+    <string name="captioning_window_opacity" msgid="5041556024849862376">"Opacidade da janela de legendas"</string>
     <string name="captioning_foreground_color" msgid="85623486537640059">"Cor do texto"</string>
     <string name="captioning_foreground_opacity" msgid="4370967856995419788">"Opacidade do texto"</string>
     <string name="captioning_edge_color" msgid="3670094753735263238">"Cor da borda"</string>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index b86c086..9ac51f4 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -92,14 +92,14 @@
     <string name="battery_info_status_charging" msgid="1705179948350365604">"Идет зарядка"</string>
     <string name="battery_info_status_charging_ac" msgid="5874340256342956252">"от сети"</string>
     <string name="battery_info_status_charging_usb" msgid="4059070156126770959">"по USB"</string>
-    <string name="battery_info_status_charging_wireless" msgid="1822125795446772771">"Wi-Fi"</string>
+    <string name="battery_info_status_charging_wireless" msgid="1822125795446772771">"(беспроводная)"</string>
     <string name="battery_info_status_discharging" msgid="310932812698268588">"Не заряжается"</string>
     <string name="battery_info_status_not_charging" msgid="2820070506621483576">"Не заряжается"</string>
     <string name="battery_info_status_full" msgid="2824614753861462808">"Батарея заряжена"</string>
     <string name="battery_info_power_unplugged" msgid="5987246575519551081">"Не подключено"</string>
     <string name="battery_info_power_ac" msgid="6808516193001604634">"Питание от сети"</string>
     <string name="battery_info_power_usb" msgid="8012931702516331797">"USB"</string>
-    <string name="battery_info_power_wireless" msgid="6819163295739305097">"Wi-Fi"</string>
+    <string name="battery_info_power_wireless" msgid="6819163295739305097">"беспроводная"</string>
     <string name="battery_info_power_ac_usb" msgid="6777734146838328688">"Питание от сети и USB"</string>
     <string name="battery_info_power_unknown" msgid="7344115502868899881">"Неизвестно"</string>
     <string name="battery_info_health_unknown" msgid="5664295556921944255">"Неизвестно"</string>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index 1516837..8e9f868 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -334,8 +334,8 @@
     <string name="crypt_keeper_encrypt_summary" product="tablet" msgid="6291564408810586">"Pri každom zapnutí tabletu požadovať číslo PIN alebo heslo na jeho dešifrovanie"</string>
     <string name="crypt_keeper_encrypt_summary" product="default" msgid="514138079795442371">"Pri každom zapnutí telefónu požadovať číslo PIN alebo heslo na jeho dešifrovanie"</string>
     <string name="crypt_keeper_encrypted_summary" msgid="1868233637888132906">"Šifrované"</string>
-    <string name="crypt_keeper_desc" product="tablet" msgid="3839235202103924154">"Svoje účty, nastavenia, prevzaté aplikácie a ich údaje môžete šifrovať. Po zašifrovaní tabletu budete musieť pri každom zapnutí zadať číselný kód PIN alebo heslo a dešifrovať ho – toto šifrovanie budete môcť zrušiť iba obnovením továrenských nastavení, čím sa všetky údaje v tablete vymažú.\n\nŠifrovanie môže trvať aj viac ako hodinu. V tablete musí byť pred šifrovaním nabitá batéria a po celú dobu šifrovania musí byť pripojený k zdroju napájania. Ak šifrovanie prerušíte, stratíte niektoré alebo všetky údaje."</string>
-    <string name="crypt_keeper_desc" product="default" msgid="7663118199519229502">"Svoje účty, nastavenia, prevzaté aplikácie a ich údaje môžete šifrovať. Po zašifrovaní telefónu budete musieť pri každom zapnutí zadať číselný kód PIN alebo heslo a dešifrovať ho – toto šifrovanie budete môcť zrušiť iba obnovením továrenských nastavení, čím sa všetky údaje v telefóne vymažú.\n\nŠifrovanie môže trvať aj viac ako hodinu. V telefóne musí byť pred šifrovaním nabitá batéria a po celú dobu šifrovania musí byť pripojený k zdroju napájania. Ak šifrovanie prerušíte, stratíte niektoré alebo všetky údaje."</string>
+    <string name="crypt_keeper_desc" product="tablet" msgid="3839235202103924154">"Svoje účty, nastavenia, stiahnuté aplikácie a ich údaje môžete šifrovať. Po zašifrovaní tabletu budete musieť pri každom zapnutí zadať číselný kód PIN alebo heslo a dešifrovať ho – toto šifrovanie budete môcť zrušiť iba obnovením továrenských nastavení, čím sa všetky údaje v tablete vymažú.\n\nŠifrovanie môže trvať aj viac ako hodinu. V tablete musí byť pred šifrovaním nabitá batéria a po celú dobu šifrovania musí byť pripojený k zdroju napájania. Ak šifrovanie prerušíte, stratíte niektoré alebo všetky údaje."</string>
+    <string name="crypt_keeper_desc" product="default" msgid="7663118199519229502">"Svoje účty, nastavenia, stiahnuté aplikácie a ich údaje môžete šifrovať. Po zašifrovaní telefónu budete musieť pri každom zapnutí zadať číselný kód PIN alebo heslo a dešifrovať ho – toto šifrovanie budete môcť zrušiť iba obnovením továrenských nastavení, čím sa všetky údaje v telefóne vymažú.\n\nŠifrovanie môže trvať aj viac ako hodinu. V telefóne musí byť pred šifrovaním nabitá batéria a po celú dobu šifrovania musí byť pripojený k zdroju napájania. Ak šifrovanie prerušíte, stratíte niektoré alebo všetky údaje."</string>
     <string name="crypt_keeper_button_text" product="tablet" msgid="1189623490604750854">"Šifrovať tablet"</string>
     <string name="crypt_keeper_button_text" product="default" msgid="2008346408473255519">"Šifrovať telefón"</string>
     <string name="crypt_keeper_low_charge_text" msgid="2029407131227814893">"Nabite batériu a skúste to znova."</string>
@@ -440,7 +440,7 @@
   </plurals>
     <string name="no_notification_listeners" msgid="2767405417723149879">"Nie sú nainštalované žiadne aplikácie na počúvanie upozornení."</string>
     <string name="notification_listener_security_warning_title" msgid="6494221261778885893">"Povoliť službu <xliff:g id="SERVICE">%1$s</xliff:g>?"</string>
-    <string name="notification_listener_security_warning_summary" msgid="2780319203595885564">"<xliff:g id="NOTIFICATION_LISTENER_NAME">%1$s</xliff:g> bude môcť čítať všetky upozornenia, ktoré uverejní systém, alebo ktorákoľvek z nainštalovaných aplikácií. Upozornenia môžu obsahovať osobné informácie, ako sú napríklad mená kontaktov alebo texty správ, ktoré sa vám odoslali. Aplikácia bude tiež môcť tieto upozornenia zrušiť alebo sa dotknúť tlačidiel akcií v upozorneniach."</string>
+    <string name="notification_listener_security_warning_summary" msgid="2780319203595885564">"<xliff:g id="NOTIFICATION_LISTENER_NAME">%1$s</xliff:g> bude môcť čítať všetky upozornenia, ktoré uverejní systém, alebo ktorákoľvek z nainštalovaných aplikácií. Upozornenia môžu obsahovať osobné informácie, ako sú napríklad mená kontaktov alebo texty správ, ktoré sa vám odoslali. Aplikácia bude tiež môcť tieto upozornenia zatvoriť alebo sa dotknúť tlačidiel akcií v upozorneniach."</string>
     <string name="bluetooth_quick_toggle_title" msgid="1037056952714061893">"Bluetooth"</string>
     <string name="bluetooth_quick_toggle_summary" msgid="5293641680139873341">"Zapnúť Bluetooth"</string>
     <string name="bluetooth_settings" msgid="1810521656168174329">"Bluetooth"</string>
@@ -840,7 +840,7 @@
     <string name="memory_calculating_size" msgid="2188358544203768588">"Prebieha výpočet..."</string>
     <string name="memory_apps_usage" msgid="2348501997988663688">"Aplikácie (údaje aplikácií a obsah médií)"</string>
     <string name="memory_media_usage" msgid="3738830697707880405">"Médiá"</string>
-    <string name="memory_downloads_usage" msgid="3755173051677533027">"Prevzatia"</string>
+    <string name="memory_downloads_usage" msgid="3755173051677533027">"Stiahnutia"</string>
     <string name="memory_dcim_usage" msgid="558887013613822577">"Obrázky, videá"</string>
     <string name="memory_music_usage" msgid="1363785144783011606">"Zvuk (hudba, vyzváňacie tóny, podcasty atď.)"</string>
     <string name="memory_media_misc_usage" msgid="235452944021647124">"Rôzne"</string>
@@ -943,7 +943,7 @@
     <string name="erase_external_storage_description" product="default" msgid="1737638779582964966">"Vymazať všetky údaje na karte SD (napr. hudbu alebo fotografie)"</string>
     <string name="master_clear_button_text" product="tablet" msgid="3130786116528304116">"Obnoviť tablet"</string>
     <string name="master_clear_button_text" product="default" msgid="7550632653343157971">"Obnoviť telefón"</string>
-    <string name="master_clear_final_desc" msgid="7209547812233487345">"Vymazať všetky vaše osobné údaje a prevzaté aplikácie? Túto akciu nebude možné vrátiť späť."</string>
+    <string name="master_clear_final_desc" msgid="7209547812233487345">"Vymazať všetky vaše osobné údaje a stiahnuté aplikácie? Túto akciu nebude možné vrátiť späť."</string>
     <string name="master_clear_final_button_text" msgid="5390908019019242910">"Vymazať všetko"</string>
     <string name="master_clear_gesture_prompt" msgid="1428645764883536750">"Nakreslite bezpečnostný vzor"</string>
     <string name="master_clear_gesture_explanation" msgid="826193821455182780">"Obnovenie továrenských nastavení musíte potvrdiť nakreslením bezpečnostného vzoru."</string>
@@ -1144,7 +1144,7 @@
     <string name="filter_dlg_title" msgid="8693024463731076091">"Zvoľte možnosti filtra"</string>
     <string name="filter_apps_all" msgid="5142129378749391876">"Všetko"</string>
     <string name="filter_apps_disabled" msgid="5364447573326472890">"Zakázané"</string>
-    <string name="filter_apps_third_party" msgid="7786348047690140979">"Prevzaté"</string>
+    <string name="filter_apps_third_party" msgid="7786348047690140979">"Stiahnuté"</string>
     <string name="filter_apps_running" msgid="7767071454371350486">"Spustené"</string>
     <string name="filter_apps_onsdcard" product="nosdcard" msgid="4843063154701023349">"Ukladací priestor USB"</string>
     <string name="filter_apps_onsdcard" product="default" msgid="1477351142334784771">"Na karte SD"</string>
@@ -1910,7 +1910,7 @@
     <string name="data_usage_total_during_range_mobile" product="tablet" msgid="5961720793603268572">"<xliff:g id="RANGE">%2$s</xliff:g>: podľa meraní tabletu využitých asi <xliff:g id="TOTAL">%1$s</xliff:g>. Operátor môže využitie dát účtovať inak."</string>
     <string name="data_usage_total_during_range_mobile" product="default" msgid="1625833170144610767">"<xliff:g id="RANGE">%2$s</xliff:g>: podľa meraní telefónu využitých asi <xliff:g id="TOTAL">%1$s</xliff:g>. Operátor môže využitie dát účtovať inak."</string>
     <string name="data_usage_metered_title" msgid="6204750602856383278">"Mobilné hotspoty"</string>
-    <string name="data_usage_metered_body" msgid="4959032833706695848">"Vyberte siete Wi-Fi, ktoré sú mobilnými hotspotmi. Aplikáciám na pozadí môže byť používanie týchto sietí zakázané. Aplikácie môžu tiež pred preberaním veľkých súborov pomocou týchto sietí zobraziť upozornenie."</string>
+    <string name="data_usage_metered_body" msgid="4959032833706695848">"Vyberte siete Wi-Fi, ktoré sú mobilnými hotspotmi. Aplikáciám na pozadí môže byť používanie týchto sietí zakázané. Aplikácie môžu tiež pred sťahovaním veľkých súborov pomocou týchto sietí zobraziť upozornenie."</string>
     <string name="data_usage_metered_mobile" msgid="5423305619126978393">"Mobilné siete"</string>
     <string name="data_usage_metered_wifi" msgid="8540872226614404873">"Siete Wi-Fi"</string>
     <string name="data_usage_metered_wifi_disabled" msgid="5502020778468643732">"Ak chcete vybrať mobil. hotspoty, zapnite pripoj. k sieti Wi-Fi."</string>
diff --git a/res/values-sv/arrays.xml b/res/values-sv/arrays.xml
index 111f001..6e57979 100644
--- a/res/values-sv/arrays.xml
+++ b/res/values-sv/arrays.xml
@@ -232,7 +232,7 @@
   <string-array name="app_ops_categories">
     <item msgid="6358963769537892925">"Plats"</item>
     <item msgid="255608127647030286">"Personligt"</item>
-    <item msgid="4588829735729884491">"Meddelanden"</item>
+    <item msgid="4588829735729884491">"SMS/MMS"</item>
     <item msgid="886742181977884584">"Media"</item>
     <item msgid="7924928667052300589">"Enhet"</item>
   </string-array>
diff --git a/res/xml/display_settings.xml b/res/xml/display_settings.xml
index 0eb90d0..a9506e8 100644
--- a/res/xml/display_settings.xml
+++ b/res/xml/display_settings.xml
@@ -27,10 +27,6 @@
                 android:title="@string/wallpaper_settings_title"
                 android:fragment="com.android.settings.WallpaperTypeSettings" />
 
-        <CheckBoxPreference
-            android:key="accelerometer"
-            android:title="@string/accelerometer_title"/>
-
         <ListPreference
                 android:key="screen_timeout"
                 android:title="@string/screen_timeout"
diff --git a/src/com/android/settings/DisplaySettings.java b/src/com/android/settings/DisplaySettings.java
index b0c944d..ab00a0d 100644
--- a/src/com/android/settings/DisplaySettings.java
+++ b/src/com/android/settings/DisplaySettings.java
@@ -49,14 +49,12 @@
     private static final int FALLBACK_SCREEN_TIMEOUT_VALUE = 30000;
 
     private static final String KEY_SCREEN_TIMEOUT = "screen_timeout";
-    private static final String KEY_ACCELEROMETER = "accelerometer";
     private static final String KEY_FONT_SIZE = "font_size";
     private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
     private static final String KEY_SCREEN_SAVER = "screensaver";
 
     private static final int DLG_GLOBAL_CHANGE_WARNING = 1;
 
-    private CheckBoxPreference mAccelerometer;
     private WarnedListPreference mFontSizePref;
     private CheckBoxPreference mNotificationPulse;
 
@@ -65,14 +63,6 @@
     private ListPreference mScreenTimeoutPreference;
     private Preference mScreenSaverPreference;
 
-    private final RotationPolicy.RotationPolicyListener mRotationPolicyListener =
-            new RotationPolicy.RotationPolicyListener() {
-        @Override
-        public void onChange() {
-            updateAccelerometerRotationCheckbox();
-        }
-    };
-
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -80,16 +70,6 @@
 
         addPreferencesFromResource(R.xml.display_settings);
 
-        mAccelerometer = (CheckBoxPreference) findPreference(KEY_ACCELEROMETER);
-        mAccelerometer.setPersistent(false);
-        if (!RotationPolicy.isRotationSupported(getActivity())
-                || RotationPolicy.isRotationLockToggleSupported(getActivity())) {
-            // If rotation lock is supported, then we do not provide this option in
-            // Display settings.  However, is still available in Accessibility settings,
-            // if the device supports rotation.
-            getPreferenceScreen().removePreference(mAccelerometer);
-        }
-
         mScreenSaverPreference = findPreference(KEY_SCREEN_SAVER);
         if (mScreenSaverPreference != null
                 && getResources().getBoolean(
@@ -226,21 +206,10 @@
     public void onResume() {
         super.onResume();
 
-        RotationPolicy.registerRotationPolicyListener(getActivity(),
-                mRotationPolicyListener);
-
         updateState();
     }
 
     @Override
-    public void onPause() {
-        super.onPause();
-
-        RotationPolicy.unregisterRotationPolicyListener(getActivity(),
-                mRotationPolicyListener);
-    }
-
-    @Override
     public Dialog onCreateDialog(int dialogId) {
         if (dialogId == DLG_GLOBAL_CHANGE_WARNING) {
             return Utils.buildGlobalChangeWarningDialog(getActivity(),
@@ -255,7 +224,6 @@
     }
 
     private void updateState() {
-        updateAccelerometerRotationCheckbox();
         readFontSizePreference(mFontSizePref);
         updateScreenSaverSummary();
     }
@@ -267,12 +235,6 @@
         }
     }
 
-    private void updateAccelerometerRotationCheckbox() {
-        if (getActivity() == null) return;
-
-        mAccelerometer.setChecked(!RotationPolicy.isRotationLocked(getActivity()));
-    }
-
     public void writeFontSizePreference(Object objValue) {
         try {
             mCurConfig.fontScale = Float.parseFloat(objValue.toString());
@@ -284,10 +246,7 @@
 
     @Override
     public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
-        if (preference == mAccelerometer) {
-            RotationPolicy.setRotationLockForAccessibility(
-                    getActivity(), !mAccelerometer.isChecked());
-        } else if (preference == mNotificationPulse) {
+        if (preference == mNotificationPulse) {
             boolean value = mNotificationPulse.isChecked();
             Settings.System.putInt(getContentResolver(), Settings.System.NOTIFICATION_LIGHT_PULSE,
                     value ? 1 : 0);
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index 27daa07..271bf2d 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -111,10 +111,6 @@
         "com.android.settings.TOP_LEVEL_HEADER_ID";
     private static final String META_DATA_KEY_FRAGMENT_CLASS =
         "com.android.settings.FRAGMENT_CLASS";
-    private static final String META_DATA_KEY_PARENT_TITLE =
-        "com.android.settings.PARENT_FRAGMENT_TITLE";
-    private static final String META_DATA_KEY_PARENT_FRAGMENT_CLASS =
-        "com.android.settings.PARENT_FRAGMENT_CLASS";
 
     private static final String EXTRA_UI_OPTIONS = "settings:ui_options";
 
@@ -129,7 +125,6 @@
     private int mTopLevelHeaderId;
     private Header mFirstHeader;
     private Header mCurrentHeader;
-    private Header mParentHeader;
     private boolean mInLocalHeaderSwitch;
 
     // Show only these settings for restricted users
@@ -217,7 +212,6 @@
         // Retrieve any saved state
         if (savedInstanceState != null) {
             mCurrentHeader = savedInstanceState.getParcelable(SAVE_KEY_CURRENT_HEADER);
-            mParentHeader = savedInstanceState.getParcelable(SAVE_KEY_PARENT_HEADER);
         }
 
         // If the current header was saved, switch to it
@@ -226,15 +220,6 @@
             showBreadCrumbs(mCurrentHeader.title, null);
         }
 
-        if (mParentHeader != null) {
-            setParentTitle(mParentHeader.title, null, new OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    switchToParent(mParentHeader.fragment);
-                }
-            });
-        }
-
         // Override up navigation for multi-pane, since we handle it in the fragment breadcrumbs
         if (onIsMultiPane()) {
             getActionBar().setDisplayHomeAsUpEnabled(false);
@@ -250,9 +235,6 @@
         if (mCurrentHeader != null) {
             outState.putParcelable(SAVE_KEY_CURRENT_HEADER, mCurrentHeader);
         }
-        if (mParentHeader != null) {
-            outState.putParcelable(SAVE_KEY_PARENT_HEADER, mParentHeader);
-        }
     }
 
     @Override
@@ -376,7 +358,6 @@
     public void switchToHeader(Header header) {
         if (!mInLocalHeaderSwitch) {
             mCurrentHeader = null;
-            mParentHeader = null;
         }
         super.switchToHeader(header);
     }
@@ -401,11 +382,6 @@
 
                 switchToHeaderLocal(parentHeader);
                 highlightHeader(mTopLevelHeaderId);
-
-                mParentHeader = new Header();
-                mParentHeader.fragment
-                        = parentInfo.metaData.getString(META_DATA_KEY_PARENT_FRAGMENT_CLASS);
-                mParentHeader.title = parentInfo.metaData.getString(META_DATA_KEY_PARENT_TITLE);
             }
         } catch (NameNotFoundException nnfe) {
             Log.w(LOG_TAG, "Could not find parent activity : " + className);
@@ -733,17 +709,6 @@
             if (ai == null || ai.metaData == null) return;
             mTopLevelHeaderId = ai.metaData.getInt(META_DATA_KEY_HEADER_ID);
             mFragmentClass = ai.metaData.getString(META_DATA_KEY_FRAGMENT_CLASS);
-
-            // Check if it has a parent specified and create a Header object
-            final int parentHeaderTitleRes = ai.metaData.getInt(META_DATA_KEY_PARENT_TITLE);
-            String parentFragmentClass = ai.metaData.getString(META_DATA_KEY_PARENT_FRAGMENT_CLASS);
-            if (parentFragmentClass != null) {
-                mParentHeader = new Header();
-                mParentHeader.fragment = parentFragmentClass;
-                if (parentHeaderTitleRes != 0) {
-                    mParentHeader.title = getResources().getString(parentHeaderTitleRes);
-                }
-            }
         } catch (NameNotFoundException nnfe) {
             // No recovery
         }
diff --git a/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java b/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java
index ed5085a..29b1e92 100644
--- a/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java
+++ b/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java
@@ -283,7 +283,7 @@
                 mFormatPreference.setSummary(mResources.getString(R.string.mtp_ptp_mode_summary));
             }
         } else if (mFormatPreference != null) {
-            mFormatPreference.setEnabled(true);
+            mFormatPreference.setEnabled(mMountTogglePreference.isEnabled());
             mFormatPreference.setSummary(mResources.getString(R.string.sd_format_summary));
         }
     }
diff --git a/src/com/android/settings/fuelgauge/Utils.java b/src/com/android/settings/fuelgauge/Utils.java
index 1ff358e..9a06c9f 100644
--- a/src/com/android/settings/fuelgauge/Utils.java
+++ b/src/com/android/settings/fuelgauge/Utils.java
@@ -44,15 +44,15 @@
         }
 
         int days = 0, hours = 0, minutes = 0;
-        if (seconds > SECONDS_PER_DAY) {
+        if (seconds >= SECONDS_PER_DAY) {
             days = seconds / SECONDS_PER_DAY;
             seconds -= days * SECONDS_PER_DAY;
         }
-        if (seconds > SECONDS_PER_HOUR) {
+        if (seconds >= SECONDS_PER_HOUR) {
             hours = seconds / SECONDS_PER_HOUR;
             seconds -= hours * SECONDS_PER_HOUR;
         }
-        if (seconds > SECONDS_PER_MINUTE) {
+        if (seconds >= SECONDS_PER_MINUTE) {
             minutes = seconds / SECONDS_PER_MINUTE;
             seconds -= minutes * SECONDS_PER_MINUTE;
         }
diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
index 3a94865..dbfa1bc 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
@@ -33,6 +33,7 @@
 import android.content.res.Configuration;
 import android.content.res.Resources;
 import android.database.ContentObserver;
+import android.hardware.input.InputDeviceIdentifier;
 import android.hardware.input.InputManager;
 import android.hardware.input.KeyboardLayout;
 import android.os.Bundle;
@@ -492,9 +493,9 @@
                 if (device != null
                         && !device.isVirtual()
                         && device.isFullKeyboard()) {
-                    final String inputDeviceDescriptor = device.getDescriptor();
+                    final InputDeviceIdentifier identifier = device.getIdentifier();
                     final String keyboardLayoutDescriptor =
-                            mIm.getCurrentKeyboardLayoutForInputDevice(inputDeviceDescriptor);
+                            mIm.getCurrentKeyboardLayoutForInputDevice(identifier);
                     final KeyboardLayout keyboardLayout = keyboardLayoutDescriptor != null ?
                             mIm.getKeyboardLayout(keyboardLayoutDescriptor) : null;
 
@@ -508,7 +509,7 @@
                     pref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
                         @Override
                         public boolean onPreferenceClick(Preference preference) {
-                            showKeyboardLayoutDialog(inputDeviceDescriptor);
+                            showKeyboardLayoutDialog(identifier);
                             return true;
                         }
                     });
@@ -539,19 +540,19 @@
         }
     }
 
-    private void showKeyboardLayoutDialog(String inputDeviceDescriptor) {
+    private void showKeyboardLayoutDialog(InputDeviceIdentifier inputDeviceIdentifier) {
         KeyboardLayoutDialogFragment fragment =
-                new KeyboardLayoutDialogFragment(inputDeviceDescriptor);
+                new KeyboardLayoutDialogFragment(inputDeviceIdentifier);
         fragment.setTargetFragment(this, 0);
         fragment.show(getActivity().getFragmentManager(), "keyboardLayout");
     }
 
     @Override
-    public void onSetupKeyboardLayouts(String inputDeviceDescriptor) {
+    public void onSetupKeyboardLayouts(InputDeviceIdentifier inputDeviceIdentifier) {
         final Intent intent = new Intent(Intent.ACTION_MAIN);
         intent.setClass(getActivity(), KeyboardLayoutPickerActivity.class);
-        intent.putExtra(KeyboardLayoutPickerFragment.EXTRA_INPUT_DEVICE_DESCRIPTOR,
-                inputDeviceDescriptor);
+        intent.putExtra(KeyboardLayoutPickerFragment.EXTRA_INPUT_DEVICE_IDENTIFIER,
+                inputDeviceIdentifier);
         mIntentWaitingForResult = intent;
         startActivityForResult(intent, 0);
     }
@@ -561,10 +562,10 @@
         super.onActivityResult(requestCode, resultCode, data);
 
         if (mIntentWaitingForResult != null) {
-            String inputDeviceDescriptor = mIntentWaitingForResult.getStringExtra(
-                    KeyboardLayoutPickerFragment.EXTRA_INPUT_DEVICE_DESCRIPTOR);
+            InputDeviceIdentifier inputDeviceIdentifier = mIntentWaitingForResult
+                    .getParcelableExtra(KeyboardLayoutPickerFragment.EXTRA_INPUT_DEVICE_IDENTIFIER);
             mIntentWaitingForResult = null;
-            showKeyboardLayoutDialog(inputDeviceDescriptor);
+            showKeyboardLayoutDialog(inputDeviceIdentifier);
         }
     }
 
diff --git a/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java b/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java
index a232a0f..451b36e 100644
--- a/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java
+++ b/src/com/android/settings/inputmethod/KeyboardLayoutDialogFragment.java
@@ -30,6 +30,7 @@
 import android.content.Intent;
 import android.content.Loader;
 import android.content.res.Resources;
+import android.hardware.input.InputDeviceIdentifier;
 import android.hardware.input.InputManager;
 import android.hardware.input.KeyboardLayout;
 import android.hardware.input.InputManager.InputDeviceListener;
@@ -48,9 +49,9 @@
 
 public class KeyboardLayoutDialogFragment extends DialogFragment
         implements InputDeviceListener, LoaderCallbacks<KeyboardLayoutDialogFragment.Keyboards> {
-    private static final String KEY_INPUT_DEVICE_DESCRIPTOR = "inputDeviceDescriptor";
+    private static final String KEY_INPUT_DEVICE_IDENTIFIER = "inputDeviceIdentifier";
 
-    private String mInputDeviceDescriptor;
+    private InputDeviceIdentifier mInputDeviceIdentifier;
     private int mInputDeviceId = -1;
     private InputManager mIm;
     private KeyboardLayoutAdapter mAdapter;
@@ -58,8 +59,8 @@
     public KeyboardLayoutDialogFragment() {
     }
 
-    public KeyboardLayoutDialogFragment(String inputDeviceDescriptor) {
-        mInputDeviceDescriptor = inputDeviceDescriptor;
+    public KeyboardLayoutDialogFragment(InputDeviceIdentifier inputDeviceIdentifier) {
+        mInputDeviceIdentifier = inputDeviceIdentifier;
     }
 
     @Override
@@ -76,7 +77,7 @@
         super.onCreate(savedInstanceState);
 
         if (savedInstanceState != null) {
-            mInputDeviceDescriptor = savedInstanceState.getString(KEY_INPUT_DEVICE_DESCRIPTOR);
+            mInputDeviceIdentifier = savedInstanceState.getParcelable(KEY_INPUT_DEVICE_IDENTIFIER);
         }
 
         getLoaderManager().initLoader(0, null, this);
@@ -85,7 +86,7 @@
     @Override
     public void onSaveInstanceState(Bundle outState) {
         super.onSaveInstanceState(outState);
-        outState.putString(KEY_INPUT_DEVICE_DESCRIPTOR, mInputDeviceDescriptor);
+        outState.putParcelable(KEY_INPUT_DEVICE_IDENTIFIER, mInputDeviceIdentifier);
     }
 
     @Override
@@ -119,7 +120,8 @@
 
         mIm.registerInputDeviceListener(this, null);
 
-        InputDevice inputDevice = mIm.getInputDeviceByDescriptor(mInputDeviceDescriptor);
+        InputDevice inputDevice =
+                mIm.getInputDeviceByDescriptor(mInputDeviceIdentifier.getDescriptor());
         if (inputDevice == null) {
             dismiss();
             return;
@@ -143,7 +145,7 @@
 
     private void onSetupLayoutsButtonClicked() {
         ((OnSetupKeyboardLayoutsListener)getTargetFragment()).onSetupKeyboardLayouts(
-                mInputDeviceDescriptor);
+                mInputDeviceIdentifier);
     }
 
     @Override
@@ -156,7 +158,7 @@
         if (which >= 0 && which < mAdapter.getCount()) {
             KeyboardLayout keyboardLayout = mAdapter.getItem(which);
             if (keyboardLayout != null) {
-                mIm.setCurrentKeyboardLayoutForInputDevice(mInputDeviceDescriptor,
+                mIm.setCurrentKeyboardLayoutForInputDevice(mInputDeviceIdentifier,
                         keyboardLayout.getDescriptor());
             }
             dismiss();
@@ -165,7 +167,7 @@
 
     @Override
     public Loader<Keyboards> onCreateLoader(int id, Bundle args) {
-        return new KeyboardLayoutLoader(getActivity().getBaseContext(), mInputDeviceDescriptor);
+        return new KeyboardLayoutLoader(getActivity().getBaseContext(), mInputDeviceIdentifier);
     }
 
     @Override
@@ -289,11 +291,11 @@
     }
 
     private static final class KeyboardLayoutLoader extends AsyncTaskLoader<Keyboards> {
-        private final String mInputDeviceDescriptor;
+        private final InputDeviceIdentifier mInputDeviceIdentifier;
 
-        public KeyboardLayoutLoader(Context context, String inputDeviceDescriptor) {
+        public KeyboardLayoutLoader(Context context, InputDeviceIdentifier inputDeviceIdentifier) {
             super(context);
-            mInputDeviceDescriptor = inputDeviceDescriptor;
+            mInputDeviceIdentifier = inputDeviceIdentifier;
         }
 
         @Override
@@ -301,7 +303,7 @@
             Keyboards keyboards = new Keyboards();
             InputManager im = (InputManager)getContext().getSystemService(Context.INPUT_SERVICE);
             String[] keyboardLayoutDescriptors = im.getKeyboardLayoutsForInputDevice(
-                    mInputDeviceDescriptor);
+                    mInputDeviceIdentifier);
             for (String keyboardLayoutDescriptor : keyboardLayoutDescriptors) {
                 KeyboardLayout keyboardLayout = im.getKeyboardLayout(keyboardLayoutDescriptor);
                 if (keyboardLayout != null) {
@@ -311,7 +313,7 @@
             Collections.sort(keyboards.keyboardLayouts);
 
             String currentKeyboardLayoutDescriptor =
-                    im.getCurrentKeyboardLayoutForInputDevice(mInputDeviceDescriptor);
+                    im.getCurrentKeyboardLayoutForInputDevice(mInputDeviceIdentifier);
             if (currentKeyboardLayoutDescriptor != null) {
                 final int numKeyboardLayouts = keyboards.keyboardLayouts.size();
                 for (int i = 0; i < numKeyboardLayouts; i++) {
@@ -349,6 +351,6 @@
     }
 
     public interface OnSetupKeyboardLayoutsListener {
-        public void onSetupKeyboardLayouts(String inputDeviceDescriptor);
+        public void onSetupKeyboardLayouts(InputDeviceIdentifier mInputDeviceIdentifier);
     }
 }
\ No newline at end of file
diff --git a/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java b/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java
index 932dd10..645695e 100644
--- a/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java
+++ b/src/com/android/settings/inputmethod/KeyboardLayoutPickerFragment.java
@@ -20,6 +20,7 @@
 import com.android.settings.SettingsPreferenceFragment;
 
 import android.content.Context;
+import android.hardware.input.InputDeviceIdentifier;
 import android.hardware.input.InputManager;
 import android.hardware.input.InputManager.InputDeviceListener;
 import android.hardware.input.KeyboardLayout;
@@ -35,7 +36,7 @@
 
 public class KeyboardLayoutPickerFragment extends SettingsPreferenceFragment
         implements InputDeviceListener {
-    private String mInputDeviceDescriptor;
+    private InputDeviceIdentifier mInputDeviceIdentifier;
     private int mInputDeviceId = -1;
     private InputManager mIm;
     private KeyboardLayout[] mKeyboardLayouts;
@@ -46,15 +47,15 @@
      * Intent extra: The input device descriptor of the keyboard whose keyboard
      * layout is to be changed.
      */
-    public static final String EXTRA_INPUT_DEVICE_DESCRIPTOR = "input_device_descriptor";
+    public static final String EXTRA_INPUT_DEVICE_IDENTIFIER = "input_device_identifier";
 
     @Override
     public void onCreate(Bundle icicle) {
         super.onCreate(icicle);
 
-        mInputDeviceDescriptor = getActivity().getIntent().getStringExtra(
-                EXTRA_INPUT_DEVICE_DESCRIPTOR);
-        if (mInputDeviceDescriptor == null) {
+        mInputDeviceIdentifier = getActivity().getIntent().getParcelableExtra(
+                EXTRA_INPUT_DEVICE_IDENTIFIER);
+        if (mInputDeviceIdentifier == null) {
             getActivity().finish();
         }
 
@@ -70,7 +71,8 @@
 
         mIm.registerInputDeviceListener(this, null);
 
-        InputDevice inputDevice = mIm.getInputDeviceByDescriptor(mInputDeviceDescriptor);
+        InputDevice inputDevice =
+                mIm.getInputDeviceByDescriptor(mInputDeviceIdentifier.getDescriptor());
         if (inputDevice == null) {
             getActivity().finish();
             return;
@@ -97,10 +99,10 @@
             if (layout != null) {
                 boolean checked = checkboxPref.isChecked();
                 if (checked) {
-                    mIm.addKeyboardLayoutForInputDevice(mInputDeviceDescriptor,
+                    mIm.addKeyboardLayoutForInputDevice(mInputDeviceIdentifier,
                             layout.getDescriptor());
                 } else {
-                    mIm.removeKeyboardLayoutForInputDevice(mInputDeviceDescriptor,
+                    mIm.removeKeyboardLayoutForInputDevice(mInputDeviceIdentifier,
                             layout.getDescriptor());
                 }
                 return true;
@@ -143,7 +145,7 @@
 
     private void updateCheckedState() {
         String[] enabledKeyboardLayouts = mIm.getKeyboardLayoutsForInputDevice(
-                mInputDeviceDescriptor);
+                mInputDeviceIdentifier);
         Arrays.sort(enabledKeyboardLayouts);
 
         for (Map.Entry<CheckBoxPreference, KeyboardLayout> entry : mPreferenceMap.entrySet()) {
diff --git a/src/com/android/settings/net/NetworkPolicyEditor.java b/src/com/android/settings/net/NetworkPolicyEditor.java
index 82bd385..ad2afa0 100644
--- a/src/com/android/settings/net/NetworkPolicyEditor.java
+++ b/src/com/android/settings/net/NetworkPolicyEditor.java
@@ -160,7 +160,8 @@
     }
 
     public int getPolicyCycleDay(NetworkTemplate template) {
-        return getPolicy(template).cycleDay;
+        final NetworkPolicy policy = getPolicy(template);
+        return (policy != null) ? policy.cycleDay : -1;
     }
 
     public void setPolicyCycleDay(NetworkTemplate template, int cycleDay, String cycleTimezone) {
@@ -173,7 +174,8 @@
     }
 
     public long getPolicyWarningBytes(NetworkTemplate template) {
-        return getPolicy(template).warningBytes;
+        final NetworkPolicy policy = getPolicy(template);
+        return (policy != null) ? policy.warningBytes : WARNING_DISABLED;
     }
 
     public void setPolicyWarningBytes(NetworkTemplate template, long warningBytes) {
@@ -185,7 +187,8 @@
     }
 
     public long getPolicyLimitBytes(NetworkTemplate template) {
-        return getPolicy(template).limitBytes;
+        final NetworkPolicy policy = getPolicy(template);
+        return (policy != null) ? policy.limitBytes : LIMIT_DISABLED;
     }
 
     public void setPolicyLimitBytes(NetworkTemplate template, long limitBytes) {
@@ -309,8 +312,16 @@
             final NetworkPolicy policy3g = getPolicy(template3g);
             final NetworkPolicy policy4g = getPolicy(template4g);
 
-            final NetworkPolicy restrictive = policy3g.compareTo(policy4g) < 0 ? policy3g
-                    : policy4g;
+            NetworkPolicy restrictive = null;
+            if ((policy3g == null) && (policy4g == null)) {
+                return false;
+            } else if (policy3g == null) {
+                restrictive = policy4g;
+            } else if (policy4g == null) {
+                restrictive = policy3g;
+            } else {
+                restrictive = policy3g.compareTo(policy4g) < 0 ? policy3g : policy4g;
+            }
             mPolicies.remove(policy3g);
             mPolicies.remove(policy4g);
             mPolicies.add(new NetworkPolicy(templateAll, restrictive.cycleDay,
@@ -321,6 +332,9 @@
         } else if (!beforeSplit && split) {
             // duplicate existing policy into two rules
             final NetworkPolicy policyAll = getPolicy(templateAll);
+            if (policyAll == null) {
+                return false;
+            }
             mPolicies.remove(policyAll);
             mPolicies.add(new NetworkPolicy(template3g, policyAll.cycleDay, policyAll.cycleTimezone,
                     policyAll.warningBytes, policyAll.limitBytes, SNOOZE_NEVER, SNOOZE_NEVER,
diff --git a/src/com/android/settings/wifi/AccessPoint.java b/src/com/android/settings/wifi/AccessPoint.java
index c4d1f7c..81706c9 100644
--- a/src/com/android/settings/wifi/AccessPoint.java
+++ b/src/com/android/settings/wifi/AccessPoint.java
@@ -60,7 +60,7 @@
     String ssid;
     String bssid;
     int security;
-    int networkId;
+    int networkId = -1;
     boolean wpsAvailable = false;
 
     PskType pskType = PskType.UNKNOWN;
@@ -68,7 +68,7 @@
     private WifiConfiguration mConfig;
     /* package */ScanResult mScanResult;
 
-    private int mRssi;
+    private int mRssi = Integer.MAX_VALUE;
     private WifiInfo mInfo;
     private DetailedState mState;
 
@@ -187,7 +187,6 @@
         bssid = config.BSSID;
         security = getSecurity(config);
         networkId = config.networkId;
-        mRssi = Integer.MAX_VALUE;
         mConfig = config;
     }
 
@@ -198,7 +197,6 @@
         wpsAvailable = security != SECURITY_EAP && result.capabilities.contains("WPS");
         if (security == SECURITY_PSK)
             pskType = getPskType(result);
-        networkId = -1;
         mRssi = result.level;
         mScanResult = result;
     }
@@ -276,6 +274,7 @@
             if (security == SECURITY_PSK) {
                 pskType = getPskType(result);
             }
+            mScanResult = result;
             refresh();
             return true;
         }
