Merge "Wiring for displaying managed profiles"
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 9a85dc0..4ee0b21 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -564,7 +564,7 @@
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.ZenModeSettings" />
+                android:value="com.android.settings.notification.ZenModeSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/notification_settings" />
         </activity>
@@ -772,7 +772,7 @@
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.NotificationStation" />
+                android:value="com.android.settings.notification.NotificationStation" />
         </activity>
 
         <!--
@@ -1690,7 +1690,7 @@
                 <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                       android:value="com.android.settings.NotificationAccessSettings" />
+                       android:value="com.android.settings.notification.NotificationAccessSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                        android:resource="@id/security_settings" />
         </activity>
@@ -1707,7 +1707,7 @@
                 <category android:name="com.android.settings.SHORTCUT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.NotificationSettings" />
+                android:value="com.android.settings.notification.NotificationSettings" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
                 android:resource="@id/notification_settings" />
         </activity>
diff --git a/res/drawable-hdpi/ic_settings_generic.png b/res/drawable-hdpi/ic_settings_generic.png
new file mode 100644
index 0000000..0e577bf
--- /dev/null
+++ b/res/drawable-hdpi/ic_settings_generic.png
Binary files differ
diff --git a/res/drawable-mdpi/ic_settings_generic.png b/res/drawable-mdpi/ic_settings_generic.png
new file mode 100644
index 0000000..a7ede7e
--- /dev/null
+++ b/res/drawable-mdpi/ic_settings_generic.png
Binary files differ
diff --git a/res/drawable-xhdpi/ic_settings_generic.png b/res/drawable-xhdpi/ic_settings_generic.png
new file mode 100644
index 0000000..6c907f4
--- /dev/null
+++ b/res/drawable-xhdpi/ic_settings_generic.png
Binary files differ
diff --git a/res/drawable-xxhdpi/ic_settings_generic.png b/res/drawable-xxhdpi/ic_settings_generic.png
new file mode 100644
index 0000000..9ce3b08
--- /dev/null
+++ b/res/drawable-xxhdpi/ic_settings_generic.png
Binary files differ
diff --git a/res/drawable/preference_highlight.xml b/res/drawable/preference_highlight.xml
new file mode 100644
index 0000000..0b704f7
--- /dev/null
+++ b/res/drawable/preference_highlight.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2014 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<touch-feedback xmlns:android="http://schemas.android.com/apk/res/android"
+                android:tint="?android:attr/colorButtonPressed"
+                android:pinned="true">
+    <item android:id="@android:id/mask"
+          android:drawable="@android:color/white" />
+</touch-feedback>
+
diff --git a/res/layout-land/choose_lock_pattern.xml b/res/layout-land/choose_lock_pattern.xml
index 6d3d6da..1fa5938 100644
--- a/res/layout-land/choose_lock_pattern.xml
+++ b/res/layout-land/choose_lock_pattern.xml
@@ -85,7 +85,8 @@
     <!-- right side: lock pattern -->
     <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
          android:layout_width="match_parent"
-         android:layout_height="match_parent" />
+         android:layout_height="match_parent"
+         android:background="@color/lock_pattern_background" />
 
 
 </com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
diff --git a/res/layout-land/confirm_lock_pattern.xml b/res/layout-land/confirm_lock_pattern.xml
index 87343c8..6e307b1 100644
--- a/res/layout-land/confirm_lock_pattern.xml
+++ b/res/layout-land/confirm_lock_pattern.xml
@@ -59,7 +59,8 @@
     <!-- right side: lock pattern -->
     <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
          android:layout_width="match_parent"
-         android:layout_height="match_parent" />
+         android:layout_height="match_parent"
+         android:background="@color/lock_pattern_background" />
 
 
 </com.android.internal.widget.LinearLayoutWithDefaultTouchRecepient>
diff --git a/res/layout-sw600dp-land/choose_lock_pattern.xml b/res/layout-sw600dp-land/choose_lock_pattern.xml
index 8fa1cee..e0d9667 100644
--- a/res/layout-sw600dp-land/choose_lock_pattern.xml
+++ b/res/layout-sw600dp-land/choose_lock_pattern.xml
@@ -46,6 +46,7 @@
     <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
         android:layout_width="354dip"
         android:layout_height="354dip"
+        android:background="@color/lock_pattern_background"
         aspect="square"/>
 
     <View
diff --git a/res/layout-sw600dp-land/confirm_lock_pattern.xml b/res/layout-sw600dp-land/confirm_lock_pattern.xml
index b9dd27a..a090a6f 100644
--- a/res/layout-sw600dp-land/confirm_lock_pattern.xml
+++ b/res/layout-sw600dp-land/confirm_lock_pattern.xml
@@ -52,6 +52,7 @@
     <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
         android:layout_width="354dip"
         android:layout_height="354dip"
+        android:background="@color/lock_pattern_background"
         aspect="square"/>
 
     <View
diff --git a/res/layout-sw600dp/choose_lock_pattern.xml b/res/layout-sw600dp/choose_lock_pattern.xml
index dec8244..7733184 100644
--- a/res/layout-sw600dp/choose_lock_pattern.xml
+++ b/res/layout-sw600dp/choose_lock_pattern.xml
@@ -51,6 +51,7 @@
          android:layout_width="354dip"
          android:layout_height="354dip"
          android:layout_marginTop="80dip"
+         android:background="@color/lock_pattern_background"
          aspect="square"/>
 
     <View
diff --git a/res/layout-sw600dp/confirm_lock_pattern.xml b/res/layout-sw600dp/confirm_lock_pattern.xml
index c32422e..12e2b86 100644
--- a/res/layout-sw600dp/confirm_lock_pattern.xml
+++ b/res/layout-sw600dp/confirm_lock_pattern.xml
@@ -49,6 +49,7 @@
          android:layout_width="354dip"
          android:layout_height="354dip"
          android:layout_marginTop="80dip"
+         android:background="@color/lock_pattern_background"
          aspect="square"/>
 
     <View
diff --git a/res/layout/choose_lock_pattern.xml b/res/layout/choose_lock_pattern.xml
index f932b4e..50f05d8 100644
--- a/res/layout/choose_lock_pattern.xml
+++ b/res/layout/choose_lock_pattern.xml
@@ -41,7 +41,8 @@
 
         <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
              android:layout_width="match_parent"
-             android:layout_height="match_parent" />
+             android:layout_height="match_parent"
+             android:background="@color/lock_pattern_background" />
 
         <!-- bottom line looks bad when button bar is their too, omit in this case -->
         <!--View
diff --git a/res/layout/confirm_lock_pattern.xml b/res/layout/confirm_lock_pattern.xml
index bd100d4..f11f5ae 100644
--- a/res/layout/confirm_lock_pattern.xml
+++ b/res/layout/confirm_lock_pattern.xml
@@ -34,7 +34,8 @@
 
     <com.android.internal.widget.LockPatternView android:id="@+id/lockPattern"
          android:layout_width="match_parent"
-         android:layout_height="match_parent" />
+         android:layout_height="match_parent"
+         android:background="@color/lock_pattern_background" />
 
     <View
          android:background="@*android:drawable/code_lock_bottom"
diff --git a/res/layout/notification_app.xml b/res/layout/notification_app.xml
index 4f61c13..414165a 100644
--- a/res/layout/notification_app.xml
+++ b/res/layout/notification_app.xml
@@ -18,67 +18,76 @@
     android:layout_height="wrap_content" >
 
     <RelativeLayout
-        android:layout_width="match_parent"
+        android:id="@android:id/button1"
+        android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_toStartOf="@+id/divider"
-        >
+        android:layout_alignWithParentIfMissing="true"
+        android:layout_toStartOf="@+id/settings_divider"
+        android:background="?android:attr/listChoiceBackgroundIndicator" >
 
         <ImageView
             android:id="@android:id/icon"
-            android:layout_width="@android:dimen/app_icon_size"
-            android:layout_height="@android:dimen/app_icon_size"
+            android:layout_width="@dimen/notification_app_icon_size"
+            android:layout_height="@dimen/notification_app_icon_size"
             android:layout_centerVertical="true"
-            android:layout_marginBottom="10dp"
-            android:layout_marginStart="0dp"
-            android:layout_marginEnd="6dp"
-            android:layout_marginTop="10dp"
             android:contentDescription="@null"
-            android:maxHeight="@android:dimen/app_icon_size"
-            android:maxWidth="@android:dimen/app_icon_size"
-            android:scaleType="fitCenter" />
+            android:scaleType="center" />
+
+        <ImageView
+            android:id="@android:id/icon1"
+            android:layout_width="@dimen/notification_app_icon_badge_size"
+            android:layout_height="@dimen/notification_app_icon_badge_size"
+            android:layout_marginLeft="@dimen/notification_app_icon_badge_margin"
+            android:layout_marginTop="@dimen/notification_app_icon_badge_margin"
+            android:background="#bb8b0000"
+            android:contentDescription="@null" />
+
+        <ImageView
+            android:id="@android:id/icon2"
+            android:layout_width="@dimen/notification_app_icon_badge_size"
+            android:layout_height="@dimen/notification_app_icon_badge_size"
+            android:layout_alignBottom="@android:id/icon"
+            android:layout_alignEnd="@android:id/icon"
+            android:layout_marginBottom="@dimen/notification_app_icon_badge_margin"
+            android:layout_marginEnd="@dimen/notification_app_icon_badge_margin"
+            android:background="#bb006400"
+            android:contentDescription="@null" />
 
         <TextView
             android:id="@android:id/title"
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_centerVertical="true"
-            android:layout_toStartOf="@android:id/button1"
             android:layout_toEndOf="@android:id/icon"
             android:ellipsize="end"
             android:singleLine="true"
-            android:textAppearance="?android:attr/textAppearanceMedium"
             android:textAlignment="viewStart"
-            android:labelFor="@android:id/button2" />
-
+            android:textAppearance="?android:attr/textAppearanceMedium" />
     </RelativeLayout>
 
-    <!-- Divider -->
-
-    <ImageView
-        android:id="@id/divider"
-        android:layout_width="wrap_content"
-        android:layout_height="match_parent"
+    <View
+        android:id="@+id/settings_divider"
+        android:layout_width="1dp"
+        android:layout_height="@dimen/notification_app_settings_divider_height"
         android:layout_centerVertical="true"
         android:layout_toStartOf="@android:id/button2"
-        android:contentDescription="@null"
-        android:src="@drawable/nav_divider" />
-
-    <!-- Settings icon -->
+        android:background="?android:attr/listDivider" />
 
     <ImageView
         android:id="@android:id/button2"
-        android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:layout_alignBottom="@android:id/widget_frame"
+        android:layout_width="@dimen/notification_app_icon_size"
+        android:layout_height="@dimen/notification_app_icon_size"
         android:layout_alignParentEnd="true"
-        android:layout_alignTop="@android:id/widget_frame"
         android:layout_centerVertical="true"
-        android:layout_margin="0dip"
-        android:background="?android:attr/selectableItemBackground"
+        android:background="?android:attr/listChoiceBackgroundIndicator"
         android:contentDescription="@string/notification_app_settings_button"
-        android:padding="8dip"
-        android:clickable="true"
-        android:focusable="true"
-        android:src="@drawable/ic_bt_config" />
+        android:scaleType="center"
+        android:src="@drawable/ic_settings_generic" />
 
-</RelativeLayout>
+    <View
+        android:id="@+id/row_divider"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="?android:attr/listDivider" />
+
+</RelativeLayout>
\ No newline at end of file
diff --git a/res/layout/notification_app_dialog.xml b/res/layout/notification_app_dialog.xml
new file mode 100644
index 0000000..a8f7880
--- /dev/null
+++ b/res/layout/notification_app_dialog.xml
@@ -0,0 +1,47 @@
+<!--
+     Copyright (C) 2014 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content" >
+
+    <ImageView
+        android:id="@android:id/icon"
+        android:layout_width="@dimen/notification_app_icon_size"
+        android:layout_height="@dimen/notification_app_icon_size"
+        android:contentDescription="@null"
+        android:scaleType="center" />
+
+    <TextView
+        android:id="@android:id/title"
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/notification_app_icon_size"
+        android:layout_toEndOf="@android:id/icon"
+        android:ellipsize="end"
+        android:gravity="center_vertical"
+        android:singleLine="true"
+        android:textAlignment="viewStart"
+        android:textAppearance="?android:attr/textAppearanceLarge" />
+
+    <CheckBox
+        android:id="@android:id/button1"
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/notification_app_icon_size"
+        android:layout_below="@android:id/icon"
+        android:layout_marginStart="@dimen/content_margin_left"
+        android:text="@string/app_notifications_dialog_show"
+        android:textAppearance="?android:attr/textAppearanceListItem" />
+
+</RelativeLayout>
\ No newline at end of file
diff --git a/res/layout/notification_app_list.xml b/res/layout/notification_app_list.xml
new file mode 100644
index 0000000..9d23a54
--- /dev/null
+++ b/res/layout/notification_app_list.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2014 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+           http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:orientation="vertical" >
+
+    <ListView
+        android:id="@android:id/list"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:divider="#0000"
+        android:dividerHeight="0px"
+        android:fastScrollAlwaysVisible="true"
+        android:fastScrollEnabled="true"
+        android:listSelector="#0000"
+        android:scrollbarStyle="outsideInset" />
+
+    <TextView
+        android:id="@android:id/empty"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:gravity="center"
+        android:text="@string/loading_notification_apps"
+        android:textAppearance="?android:attr/textAppearanceMedium" />
+
+</LinearLayout>
\ No newline at end of file
diff --git a/res/layout/notification_app_section.xml b/res/layout/notification_app_section.xml
new file mode 100644
index 0000000..144ea11
--- /dev/null
+++ b/res/layout/notification_app_section.xml
@@ -0,0 +1,20 @@
+<!--
+     Copyright (C) 2014 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+    style="?android:attr/listSeparatorTextViewStyle"
+    android:id="@android:id/title"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content" />
diff --git a/res/layout/notification_info_row.xml b/res/layout/notification_info_row.xml
deleted file mode 100644
index bc71ef2..0000000
--- a/res/layout/notification_info_row.xml
+++ /dev/null
@@ -1,115 +0,0 @@
-<!--
-     Copyright (C) 2013 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content" >
-
-    <!-- Dream selectable row (icon, caption, radio button) -->
-
-    <RelativeLayout
-        android:id="@android:id/widget_frame"
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_toStartOf="@+id/divider"
-        android:background="?android:attr/selectableItemBackground" >
-
-        <!-- Dream icon -->
-
-        <ImageView
-            android:id="@+id/pkgicon"
-            android:layout_width="@*android:dimen/status_bar_icon_size"
-            android:layout_height="@*android:dimen/status_bar_icon_size"
-            android:layout_centerVertical="true"
-            android:layout_marginBottom="6dp"
-            android:layout_marginStart="0dp"
-            android:layout_marginEnd="6dp"
-            android:layout_marginTop="6dp"
-            android:contentDescription="@null"
-            android:maxHeight="@*android:dimen/status_bar_icon_size"
-            android:maxWidth="@*android:dimen/status_bar_icon_size"
-            android:scaleType="fitCenter" />
-
-        <ImageView
-            android:id="@android:id/icon"
-            android:layout_width="@*android:dimen/status_bar_icon_size"
-            android:layout_height="@*android:dimen/status_bar_icon_size"
-            android:layout_centerVertical="true"
-            android:layout_toEndOf="@id/pkgicon"
-            android:layout_marginBottom="6dp"
-            android:layout_marginStart="0dp"
-            android:layout_marginEnd="8dp"
-            android:layout_marginTop="6dp"
-            android:contentDescription="@null"
-            android:maxHeight="@*android:dimen/status_bar_icon_size"
-            android:maxWidth="@*android:dimen/status_bar_icon_size"
-            android:scaleType="fitCenter" />
-
-        <!-- Dream caption -->
-
-        <TextView
-            android:id="@android:id/title"
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_centerVertical="true"
-            android:layout_toStartOf="@android:id/button1"
-            android:layout_toEndOf="@android:id/icon"
-            android:ellipsize="end"
-            android:singleLine="true"
-            android:textAppearance="?android:attr/textAppearanceSmall"
-            android:textAlignment="viewStart"
-            android:labelFor="@android:id/button2" />
-
-        <!-- Dream radio button -->
-
-        <!--<RadioButton
-            android:id="@android:id/button1"
-            android:layout_width="wrap_content"
-            android:layout_height="match_parent"
-            android:layout_alignParentEnd="true"
-            android:layout_centerVertical="true"
-            android:duplicateParentState="true"
-            android:clickable="false"
-            android:focusable="false" />-->
-    </RelativeLayout>
-
-    <!-- Divider -->
-
-    <ImageView
-        android:id="@id/divider"
-        android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:layout_centerVertical="true"
-        android:layout_toStartOf="@android:id/button2"
-        android:contentDescription="@null"
-        android:src="@drawable/nav_divider" />
-
-    <!-- Settings icon -->
-
-    <ImageView
-        android:id="@android:id/button2"
-        android:layout_width="wrap_content"
-        android:layout_height="match_parent"
-        android:layout_alignBottom="@android:id/widget_frame"
-        android:layout_alignParentEnd="true"
-        android:layout_alignTop="@android:id/widget_frame"
-        android:layout_centerVertical="true"
-        android:layout_margin="0dip"
-        android:background="?android:attr/selectableItemBackground"
-        android:contentDescription="@string/screensaver_settings_button"
-        android:padding="8dip"
-        android:src="@drawable/ic_bt_config" />
-
-</RelativeLayout>
\ No newline at end of file
diff --git a/res/layout/notification_log_row.xml b/res/layout/notification_log_row.xml
index 284e9ea..702e6b8 100644
--- a/res/layout/notification_log_row.xml
+++ b/res/layout/notification_log_row.xml
@@ -33,7 +33,7 @@
             android:layout_width="@*android:dimen/status_bar_icon_size"
             android:layout_height="@*android:dimen/status_bar_icon_size"
             android:layout_centerVertical="true"
-            android:layout_toEndOf="@id/pkgicon"
+            android:layout_toEndOf="@+id/pkgicon"
             android:layout_marginStart="0dp"
             android:layout_marginEnd="8dp"
             android:contentDescription="@null"
diff --git a/res/layout/preference_zen_mode.xml b/res/layout/preference_zen_mode.xml
deleted file mode 100644
index 4139d40..0000000
--- a/res/layout/preference_zen_mode.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-<ImageView
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/configure_zen_mode"
-    android:layout_width="wrap_content"
-    android:layout_height="wrap_content"
-    android:layout_gravity="center_vertical"
-    android:padding="8dip"
-    android:visibility="gone"
-    android:background="?android:attr/selectableItemBackground"
-    android:src="@drawable/ic_bt_config"
-    android:contentDescription="@string/configure_zen_mode_description" />
diff --git a/res/layout/radio_info.xml b/res/layout/radio_info.xml
index eeb46a0..d81dad6 100644
--- a/res/layout/radio_info.xml
+++ b/res/layout/radio_info.xml
@@ -91,6 +91,13 @@
             <TextView android:id="@+id/cellinfo" style="@style/info_value" />
         </LinearLayout>
 
+        <!-- DcRtInfo - DataConnectionRealTimeInfo -->
+        <LinearLayout style="@style/entry_layout">
+            <TextView android:text="@string/radio_info_dcrtinfo_label"
+                      style="@style/info_label" />
+            <TextView android:id="@+id/dcrtinfo" style="@style/info_value" />
+        </LinearLayout>
+
         <!-- Roaming -->
         <LinearLayout style="@style/entry_layout">
             <TextView android:text="@string/radio_info_roaming_label" style="@style/info_label" />
diff --git a/res/layout/write_wifi_config_to_nfc.xml b/res/layout/write_wifi_config_to_nfc.xml
new file mode 100644
index 0000000..416c1ae
--- /dev/null
+++ b/res/layout/write_wifi_config_to_nfc.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+            style="@style/wifi_section">
+
+    <LinearLayout android:id="@+id/password_layout"
+                  style="@style/wifi_item"
+                  android:padding="8dip"
+                  android:orientation="vertical" >
+
+        <TextView
+                android:id="@+id/password_label"
+                android:layout_gravity="fill"
+                style="@style/wifi_item_label"
+                android:text="@string/wifi_password" />
+
+        <EditText android:id="@+id/password"
+                  style="@style/wifi_item_edit_content"
+                  android:singleLine="true"
+                  android:password="true" />
+
+        <TextView
+                style="@style/wifi_item_label" />
+
+        <CheckBox android:id="@+id/show_password"
+                  style="@style/wifi_item_content"
+                  android:textSize="14sp"
+                  android:text="@string/wifi_show_password" />
+
+    </LinearLayout>
+
+
+    <ProgressBar
+            android:id="@+id/progress_bar"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_gravity="center_vertical|center_horizontal"
+            android:padding="8dip"
+            android:visibility="gone"
+            style="@android:style/Widget.ProgressBar.Large" />
+
+</LinearLayout>
diff --git a/res/menu/options_menu.xml b/res/menu/options_menu.xml
index a9135e2..1f35c5d 100644
--- a/res/menu/options_menu.xml
+++ b/res/menu/options_menu.xml
@@ -18,7 +18,7 @@
     <item
         android:id="@+id/search"
         android:title="@string/search_menu"
-        android:icon="@*android:drawable/ic_search_api_holo_light"
+        android:icon="@*android:drawable/ic_search_api_quantum"
         android:showAsAction="collapseActionView|ifRoom"
         android:actionViewClass="android.widget.SearchView" />
 </menu>
\ No newline at end of file
diff --git a/res/values-af/strings.xml b/res/values-af/strings.xml
index 750a013..c56d83f 100644
--- a/res/values-af/strings.xml
+++ b/res/values-af/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Ligging:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Naburige CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Selinligting:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Datapogings:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-dienste:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Swerwing:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS beskikbaar)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Beveilig met <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", beveilig met <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Voer jou netwerkwagwoord in."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Geen"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Om liggingsakkuraatheid te verbeter en vir ander doele, wil <xliff:g id="APP_NAME">%1$s</xliff:g> netwerkskandering aanskakel, selfs wanneer Wi-Fi af is.\n\n Laat dit toe vir alle programme wat wil skandeer?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Laat toe"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibreer wanneer stil"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Verstek kennisgewingklank"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Flikker kennisgewing-liggie"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Kennisgewings hou jou op hoogte"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Belangrike kennisgewings sal opspring"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Luitoon"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Kennisgewing"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Gebruik inkomendeoproep-volume vir kennisgewings"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Soek"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Soekinstellings"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi Wi-Fi netwerk verbinding"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Wys wanneer gesluit"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Sensitiewe kennisgewinginhoud nie op sluitskerm"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Alle kennisgewinginhoud wys op die sluitskerm"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Beperkte onderbrekings"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Stel beperkte onderbrekings op"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Beperkte onderbrekings"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Kennisgewings"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Algemeen"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sekuriteit"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Aanpassings"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Programme"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Kennisgewingsinstellings"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Stel Wi-Fi-NFC-merker op"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Skryf"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tik \'n merker om te skryf …"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Ongeldige wagwoord, probeer weer."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Sukses!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Kon nie data na NFC-merker skryf nie. As die probleem voortduur, probeer \'n ander merker"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC-merker is nie skryfbaar nie. Gebruik asseblief \'n ander merker."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-am/strings.xml b/res/values-am/strings.xml
index 232921f..7f02ccd 100644
--- a/res/values-am/strings.xml
+++ b/res/values-am/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"ስፍራ:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"አጎራባችCID፡"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo፦"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo፦"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"የውሂብ ሙከራዎች፡"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"የGPRS አገልግሎት፡"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"በመንቀሳቀስ ላይ:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">"፣ በ<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> የተጠበቀ"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"የአውታረ መረብ ይለፍ ቃልዎን ያስገቡ።"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"የለም"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> የአካባቢ ትክክለኛነትን ለማሻሻል እና ለሌሎች ዓላማዎች የአውታረ መረብ መቃኘትን ማብራት ይፈልጋል፣ Wi-Fi ጠፍቶ ቢሆንም እንኳ።\n\nይሄ ለሁሉም መቃኘት ለሚፈልጉ መተግበሪያዎች ይፈቀድ?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"ፍቀድ"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"ፀጥ ሲል ንዘር"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"ነባሪ የማሳወቂያ ድምጽ"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"የማሳወቂያ ብርሃን አሳይ"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"አሳዋቂ ማሳወቂያዎች"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"አስፈላጊ ማሳወቂያዎች ብቅ ይላሉ"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"የስልክ ጥሪ ድምፅ"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"ማሳወቂያ"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"ለማሳወቂያዎች የገቢ ጥሪ ድምፅን ተጠቀም"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"ይፈልጉ"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"የፍለጋ ቅንብሮች"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"የwifi wi-fi አውታረ መረብ ግንኙነት"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"ሲቆለፍ አሳይ"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"ልዩ ጥንቃቄ የሚያስፈልጋቸው የማሳወቂያ ይዘቶች በመቆለፊያ ማያ ገጹ ላይ ይደበቃሉ"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"ሁሉም የማሳወቂያ ይዘቶች በመቆለፊያ ማያ ገጹ ላይ ይታያሉ"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"የተገደቡ ማቋረጦች"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"የተገደቡ መቋረጦችን አብጅ"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"የተገደቡ ማቋረጦች"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"ማሳወቂያዎች"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"አጠቃላይ"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"ደህንነት"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"ማስተካከያዎች"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"መተግበሪያዎች"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"የማሳወቂያ ቅንብሮች"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"የWiFi NFC መለያ ያዋቅሩ"</string>
+    <string name="write_tag" msgid="8571858602896222537">"ጻፍ"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"ለመጻፍ አንድ መለያ መታ ያድርጉ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"ልክ ያልሆነ የይለፍ ቃል፣ እንደገና ይሞክሩ።"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"ስኬት!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"ውሂብ በNFC መለያ ላይ መጻል አልተቻለም። ችግሩ ከቀጠለ የተለየ መለያ ይሞክሩ"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"የNFC መለያ ሊጻፍበት የሚችል አይደለም። እባክዎ የተለየ መለያ ይጠቀሙ።"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ar/strings.xml b/res/values-ar/strings.xml
index bed4f07..ac79694 100644
--- a/res/values-ar/strings.xml
+++ b/res/values-ar/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"الموقع:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"‏تجاور CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"معلومات الخلية:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"محاولات البيانات:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"‏خدمة GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"تجوال:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">"، محمي باستخدام <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"أدخل كلمة مرور الشبكة."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"لا شيء"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"‏لتحسين مستوى دقة تحديد الموقع ولأغراض أخرى، يحتاج <xliff:g id="APP_NAME">%1$s</xliff:g> إلى تشغيل البحث عن الشبكات، حتى مع إيقاف Wi-Fi.\n\nهل تريد السماح بذلك لجميع التطبيقات التي تحتاج إلى فحص؟"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"سماح"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"اهتزاز عند تشغيل الوضع صامت"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"صوت الإشعار الافتراضي"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"ضوء الاشعار بالنبض"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"تنبيه بالإشعارات"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"ستظهر إشعارات مهمّة"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"نغمة الرنين"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"التنبيه"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"استخدام مستوى صوت المكالمة الواردة للإشعارات"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"بحث"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"إعدادات البحث"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"‏اتصال شبكة واي فاي wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"عرض عند التأمين"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"سيتم إخفاء محتوى الإشعارات المهم في شاشة التأمين"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"سيتم عرض محتوى الإشعارات المهم في شاشة التأمين"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"انقطاعات محدودة"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"تهيئة الانقطاعات المحدودة"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"انقطاعات محدودة"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"الإشعارات"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"إعدادات عامة"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"الأمان"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"التعديلات"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"التطبيقات"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"إعدادات الإشعارات"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"‏علامة NFC لإعداد WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"كتابة"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"انقر على كلمة علامة لكتابة..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"كلمة المرور غير صالحة، أعد المحاولة."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"نجح الإجراء!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"‏تعذرت كتابة البيانات إلى علامة NFC. إذا استمرت المشكلة، فجرّب علامة مختلفة."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"‏علامة NFC ليست قابلة للكتابة. الرجاء استخدام علامة مختلفة."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-bg/strings.xml b/res/values-bg/strings.xml
index eed0ced..078db0b 100644
--- a/res/values-bg/strings.xml
+++ b/res/values-bg/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Местоположение:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Идентификация на съседно обаждане:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Клетъчна информация:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Информация за DcRt:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Опити за данни:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS услуга:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Роуминг:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", защитено с <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Въведете паролата за мрежата."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Няма"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"За да подобри точността на местоположението и за други цели, <xliff:g id="APP_NAME">%1$s</xliff:g> иска да включи сканирането за мрежи дори когато Wi-Fi е изключен.\n\nИскате ли да разрешите това за всички приложения, които искат да сканират?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Разрешаване"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Вибрира при тих режим"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Стандартен звук за известяване"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Пулсиране на светлината за известия"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Известия за внимание"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Важн. известия ще се показв. в изск. прозорец"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Мелодия"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Известие"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Използване на силата на звука при вх. обаждане за известия"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Търсене"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Настройки за търсене"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"Връзка с WiFi/Wi-Fi мрежа"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Показване при закл. екран"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Поверит. съдържание ще е скрито при заключен екран"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Цялото съдържание ще се показва при заключен екран"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ограничени прекъсвания"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Конфигуриране на огран. прекъсвания"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ограничени прекъсвания"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Известия"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Общи настройки"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Сигурност"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Фини настройки"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Приложения"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Настройки за известяване"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Настройване на маркер за КБП за WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Записване"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"За записване докоснете маркер..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Невалидна парола. Опитайте отново."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Успех!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Записването на данни в маркера за КБП не е възможно. Ако проблемът не се отстрани, опитайте с друг маркер"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Записването в маркера за КБП не е възможно. Моля, използвайте друг."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ca/strings.xml b/res/values-ca/strings.xml
index b0d7b49..b74c2ba 100644
--- a/res/values-ca/strings.xml
+++ b/res/values-ca/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Ubicació:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID veí:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Informació mòbil:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Informació de diagnòstic:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Intents de dades:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Servei GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Itinerància:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponible)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Protegida amb <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", protegida amb <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Escriu la contrasenya de la xarxa."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Cap"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Per millorar la precisió de la ubicació i per a altres finalitats, <xliff:g id="APP_NAME">%1$s</xliff:g> vol activar la cerca de xarxes tot i que la connexió Wi-Fi estigui desactivada.\n\nVols permetre-ho per a totes les aplicacions que vulguin cercar xarxes?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permet"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibra quan estigui en silenci"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"So de notificació predeterminat"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Llum de notificació"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notificacions d\'avís"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Les notificacions importants seran emergents."</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"So de trucada"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notificació"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utilitza el volum de trucada entrant per a les notificacions"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Cerca"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Configuració de la cerca"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"connexió xarxa wifi wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Mostra a pantalla bloq."</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Notificacions privades ocultes a pantalla bloqueig"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Les notificacions es mostraran a pantalla bloqueig"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interrupcions limitades"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Configura interrupcions limit."</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interrupcions limitades"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notificacions"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"General"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Seguretat"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Retocs"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplicacions"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Configuració de les notificacions"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configuració de l\'etiqueta NFC per a Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Escriu-hi"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Toca una etiqueta per escriure..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"La contrasenya no és vàlida. Torna-ho a provar."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Procés correcte"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"No es poden escriure dades a l\'etiqueta NFC. Si el problema continua, prova-ho amb una altra etiqueta."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"No es pot escriure a l\'etiqueta NFC. Fes servir una altra etiqueta."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-cs/strings.xml b/res/values-cs/strings.xml
index 7a293ca..7d21cd7 100644
--- a/res/values-cs/strings.xml
+++ b/res/values-cs/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Místo:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Sousední identifikátor CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Informace:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Pokusy dat:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Služba GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS je k dispozici)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Zabezpečení: <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", zabezpečení <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Zadejte heslo sítě."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Žádné"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Aplikace <xliff:g id="APP_NAME">%1$s</xliff:g> chce zapnout vyhledávání sítí (kvůli lepšímu určení polohy i kvůli jiným účelům) a hledat sítě i v případě, že je vypnut modul Wi-Fi.\n\nChcete tuto možnost povolit všem aplikacím, které chtějí vyhledávat sítě?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Povolit"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrovat v tichém režimu"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Výchozí zvuk oznámení"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Blikat kontrolkou oznámení"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Připravte se na oznámení"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Důležitá oznámení se zobrazí ve vysk. okně"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Vyzváněcí tón"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Oznámení"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Použije hlasitost příchozích hovorů také pro oznámení"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Vyhledávání"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Vyhledávání nastavení"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi síť připojení"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Zobrazit při uzamčení"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Citlivý obsah oznámení bude na obrazovce uzamčení skryt"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Na obrazovce uzamčení se zobrazí veškerý obsah oznámení"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Omezený počet vyrušení"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Nastavení omezeného vyrušování"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Omezený počet vyrušování"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Oznámení"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Obecné"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Zabezpečení"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Vylepšení"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplikace"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Nastavení oznámení"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Nastavení štítku NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Zapsat"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Klepnutím na štítek zahájíte zápis..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Neplatné heslo, zkuste to znovu."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Povedlo se!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Zápis dat na štítek NFC se nezdařil. Pokud problém přetrvává, zkuste jiný štítek."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Na štítek NFC nelze zapisovat. Zkuste jiný štítek."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-da/strings.xml b/res/values-da/strings.xml
index b467fda..b9d21ec 100644
--- a/res/values-da/strings.xml
+++ b/res/values-da/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Placering:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Nabo-CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Mobiloplysninger:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Dataforsøg:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-tjeneste:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS er tilgængelig)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Sikret med <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", sikret med <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Indtast din adgangskode til netværket."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ingen"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"For bl.a. at kunne angive en mere nøjagtig placering vil <xliff:g id="APP_NAME">%1$s</xliff:g> gerne aktivere netværkssøgning, selv når Wi-Fi er deaktiveret.\n\nVil du tillade dette for alle apps, der gerne vil søge?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Tillad"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrer ved lydløs"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Standardlyd for underretninger"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Blink ved nye underretninger"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Forhåndsunderretninger"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Vigtige underretninger vises i pop op-vinduer"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringetone"</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>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Søgning"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Indstillinger for søgning"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi netværk forbindelse"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Vis ved låsning"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Følsomt indhold i underretninger bliver skjult på låseskærmen"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Alt indhold i underretninger bliver vist på låseskærmen"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Begrænsede afbrydelser"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfigurer begrænsede afbrydelser"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Begrænsede afbrydelser"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Underretninger"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Generelt"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sikkerhed"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Justeringer"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apps"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Indstillinger for underretninger"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Konfigurer NFC-tag for Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Skriv"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tryk på et tag for at skrive..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Ugyldig adgangskode. Prøv igen."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Gennemført!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Der kan ikke skrives data til NFC-tagget. Hvis problemet fortsætter, skal du prøve et andet tag"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Der kan ikke skrives til NFC-tagget. Brug et andet tag."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index d93ae2f..211fefb 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Standort:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Benachbarte CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Netz-Info:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Datenversuche:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-Service:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -629,6 +630,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS verfügbar)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Gesichert mit <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", gesichert mit <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Geben Sie Ihr Netzwerkpasswort ein."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Keine"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Zur Verbesserung der Standortgenauigkeit und zu anderen Zwecken möchte <xliff:g id="APP_NAME">%1$s</xliff:g> die Netzwerküberprüfung aktivieren, auch wenn das WLAN deaktiviert ist.\n\nMöchten Sie dies für alle Apps zulassen, die eine Überprüfung durchführen möchten?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Zulassen"</string>
@@ -700,8 +702,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Im Lautlos-Modus vibrieren"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Standard-Benachrichtigungston"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Benachrichtigungslicht"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Warnungen"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Wichtige Benachrichtigungen werden angezeigt."</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Klingelton"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Benachrichtigung"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Lautstärke für eingehende Anrufe für Benachrichtigungen verwenden"</string>
@@ -1345,8 +1347,8 @@
     <string name="select_runtime_warning_message" msgid="1937574953265648165">"Neu starten, um Laufzeit von <xliff:g id="OLD">%1$s</xliff:g> zu <xliff:g id="NEW">%2$s</xliff:g> zu ändern?"</string>
     <string name="wifi_display_certification" msgid="8611569543791307533">"Kabellose Übertragung"</string>
     <string name="wifi_display_certification_summary" msgid="1155182309166746973">"Optionen zur Zertifizierung für kabellose Übertragung anzeigen"</string>
-    <string name="allow_mock_location" msgid="2787962564578664888">"Falsche Standorte"</string>
-    <string name="allow_mock_location_summary" msgid="317615105156345626">"Falsche Standorte zulassen"</string>
+    <string name="allow_mock_location" msgid="2787962564578664888">"Simulierte Standorte"</string>
+    <string name="allow_mock_location_summary" msgid="317615105156345626">"Simulierte Standorte zulassen"</string>
     <string name="adb_warning_title" msgid="6234463310896563253">"USB-Debugging zulassen?"</string>
     <string name="adb_warning_message" msgid="7316799925425402244">"USB-Debugging ist nur für Entwicklungszwecke vorgesehen. Damit können Sie Daten zwischen Ihrem Computer und Ihrem Gerät kopieren, Apps auf Ihrem Gerät ohne Benachrichtigung installieren und Protokolldaten lesen."</string>
     <string name="adb_keys_warning_message" msgid="6932230298032192937">"Zugriff auf USB-Debugging für alle zuvor autorisierten Computer aufheben?"</string>
@@ -1984,7 +1986,7 @@
     <string name="confirm_new_backup_pw_prompt" msgid="3238728882512787864">"Neues Passwort für vollständige Sicherungen erneut eingeben"</string>
     <string name="backup_pw_set_button_text" msgid="2387480910044648795">"Passwort festlegen"</string>
     <string name="backup_pw_cancel_button_text" msgid="8845630125391744615">"Abbrechen"</string>
-    <string name="percentage" msgid="5866131581207788624">"<xliff:g id="NUMBER">%d</xliff:g>%%"</string>
+    <string name="percentage" msgid="5866131581207788624">"<xliff:g id="NUMBER">%d</xliff:g> %%"</string>
     <string name="additional_system_update_settings_list_item_title" msgid="214987609894661992">"Zusätzliche Systemupdates"</string>
     <string name="selinux_status_disabled" msgid="924551035552323327">"Deaktiviert"</string>
     <string name="selinux_status_permissive" msgid="6004965534713398778">"Moderat"</string>
@@ -2099,16 +2101,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Suchen"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Sucheinstellungen"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wlan wifi wi-fi netzwerkverbindung"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Sperrbildschirmanzeige"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Keine sensiblen Benachrichtigungsinhalte auf dem Sperrbildschirm."</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Alle Benachrichtigungsinhalte auf dem Sperrbildschirm."</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Begrenzte Unterbrechungen"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Begr. Unterbrechungen konfig."</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Beschränkte Unterbrechungen"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Benachrichtigungen"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Allgemein"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sicherheit"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apps"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Benachrichtigungseinstellungen"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"WLAN-NFC-Tag einrichten"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Schreiben"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Zum Schreiben auf das Tag tippen…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Ungültiges Passwort. Bitte versuchen Sie es erneut."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Erfolgreich ausgeführt!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Es können keine Daten in das NFC-Tag geschrieben werden. Sollte das Problem weiterhin bestehen, versuchen Sie es mit einem anderen Tag."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"In das NFC-Tag kann nicht geschrieben werden. Bitte verwenden Sie ein anderes Tag."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index bb61dd1..79353e0 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Τοποθεσία:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Γειτονικά CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Πληροφορίες κελιού:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Προσπάθειες δεδομένων:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Υπηρεσία GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Περιαγωγή:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", ασφαλισμένο με <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Εισαγάγετε τον κωδικό πρόσβασης του δικτύου σας."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Καμία"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Για τη βελτίωση της ακρίβειας της τοποθεσίας σας και για άλλους σκοπούς, η εφαρμογή <xliff:g id="APP_NAME">%1$s</xliff:g> επιθυμεί να ενεργοποιήσει τη σάρωση δικτύων, ακόμη και όταν το Wi-Fi είναι απενεργοποιημένο.\n\nΝα επιτρέπεται αυτή η ενέργεια για όλες τις εφαρμογές που επιθυμούν σάρωση;"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Να επιτραπεί"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Δόνηση στο αθόρυβο"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Προεπιλεγμένος ήχος ειδοποίησης"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Φωτεινός παλμός ειδοποίησης"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Προειδοποιήσεις"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Θα εμφανίζονται σημαντικές ειδοποιήσεις"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ήχος κλήσης"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Ειδοποίηση"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Χρήση έντασης ήχου εισερχόμενης κλήσης για ειδοποιήσεις"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Αναζήτηση"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Ρυθμίσεις αναζήτησης"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi σύνδεση δικτύου"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Εμφάνιση κατά το κλείδωμα"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Απόκρυψη ευαίσθητου περιεχ.ειδοπ.σε οθόνη κλειδ."</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Εμφάνιση περιεχ.ειδοποιήσεων σε οθόνη κλειδώματος"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Περιορισμένες διακοπές"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Ρύθμιση περιορισμένων διακοπών"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Περιορισμένες διακοπές"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Ειδοποιήσεις"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Γενικά"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Ασφάλεια"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Προσαρμογές"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Εφαρμογές"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Ρυθμίσεις ειδοποιήσεων"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Ρύθμιση ετικέτας ΕΚΠ Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Εγγραφή"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Αγγίξτε μια ετικέτα για εγγραφή…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Μη έγκυρος κωδικός πρόσβασης, δοκιμάστε ξανά."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Ωραία!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Δεν είναι δυνατή η εγγραφή δεδομένων στην ετικέτα ΕΚΠ. Εάν το πρόβλημα εξακολουθεί να παρουσιάζεται, δοκιμάστε μια διαφορετική ετικέτα"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Δεν υπάρχει δυνατότητα εγγραφής στην ετικέτα ΕΚΠ. Χρησιμοποιήστε μια διαφορετική ετικέτα."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 258e6af..cc3fa4b 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Location:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Neighbouring CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Data attempts:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS service:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS available)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Secured with <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", secured with <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Enter your network password."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"None"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"To improve location accuracy and for other purposes, <xliff:g id="APP_NAME">%1$s</xliff:g> wants to turn on network scanning, even when Wi-Fi is off.\n\nAllow this for all apps that want to scan?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Allow"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrate when silent"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Default notification sound"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulse notification light"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Heads Up Notifications"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Important notifications will pop up"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringtone"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notification"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Use incoming call volume for notifications"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Search"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Search settings"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi Wi-Fi network connection"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Show when locked"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Sensitive notification contents will be hidden on the lock screen"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"All notification contents will be shown on the lock screen"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Limited interruptions"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Configure limited interruptions"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Limited Interruptions"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notifications"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"General"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Security"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apps"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Notification settings"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Set up Wi-Fi NFC Tag"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Write"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Invalid password, try again."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Success!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Unable to write data to NFC tag. If the problem persists, try a different tag"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC tag is not writeable. Please use a different tag."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-en-rIN/strings.xml b/res/values-en-rIN/strings.xml
index 258e6af..cc3fa4b 100644
--- a/res/values-en-rIN/strings.xml
+++ b/res/values-en-rIN/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Location:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Neighbouring CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Data attempts:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS service:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS available)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Secured with <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", secured with <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Enter your network password."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"None"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"To improve location accuracy and for other purposes, <xliff:g id="APP_NAME">%1$s</xliff:g> wants to turn on network scanning, even when Wi-Fi is off.\n\nAllow this for all apps that want to scan?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Allow"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrate when silent"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Default notification sound"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulse notification light"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Heads Up Notifications"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Important notifications will pop up"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringtone"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notification"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Use incoming call volume for notifications"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Search"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Search settings"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi Wi-Fi network connection"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Show when locked"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Sensitive notification contents will be hidden on the lock screen"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"All notification contents will be shown on the lock screen"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Limited interruptions"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Configure limited interruptions"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Limited Interruptions"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notifications"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"General"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Security"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apps"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Notification settings"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Set up Wi-Fi NFC Tag"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Write"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tap a tag to write..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Invalid password, try again."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Success!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Unable to write data to NFC tag. If the problem persists, try a different tag"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC tag is not writeable. Please use a different tag."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-es-rUS/strings.xml b/res/values-es-rUS/strings.xml
index 9e4d241..9bc5281 100644
--- a/res/values-es-rUS/strings.xml
+++ b/res/values-es-rUS/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Ubicación:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID cercano:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Información móvil:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Intentos de datos:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Servicio GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WSP disponible)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Protegida con <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", protegida con <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Ingresa la contraseña de red."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ninguna"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Para mejorar la precisión de la ubicación y para otros fines, <xliff:g id="APP_NAME">%1$s</xliff:g> quiere activar la búsqueda de redes, incluso cuando la conexión Wi-Fi esté desactivada.\n\n¿Quieres permitir esto para todas las aplicaciones que deseen buscar redes?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permitir"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrar en modo silencioso"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Sonido de notificación predeterminado"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Luz de notificación"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notificaciones de advertencia"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Notificaciones importantes emergentes"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Tono de llamada"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notificación"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utilizar el volumen de las llamadas entrantes para las notificaciones"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Búsqueda"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Configuración de búsqueda"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi, wi-fi, red, conexión"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Mostrar al bloquear"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Notif. personales ocultas en pantalla bloqueada"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Notificaciones visibles en la pantalla bloqueada"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interrupciones limitadas"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Configurar interrup. limitadas"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interrupciones limitadas"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notificaciones"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"General"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Seguridad"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Ajustes"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplicaciones"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Configuración de notificaciones"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurar etiqueta NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Escribir"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Presiona una etiqueta para editarla…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"La contraseña no es válida. Vuelve a intentarlo."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Acción finalizada correctamente"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"No se pudieron escribir datos en la etiqueta NFC. Si el problema persiste, prueba con una etiqueta diferente."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"No se puede escribir en la etiqueta NFC. Prueba con una etiqueta diferente."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 92d7216..65beabf 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Ubicación:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID anexo"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Información móvil:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Intentos de datos:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Servicio GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Itinerancia:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponible)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Protegida con <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", protegida con <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Introduce la contraseña de la red."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ninguna"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Para mejorar la precisión de la ubicación y para otros fines, <xliff:g id="APP_NAME">%1$s</xliff:g> quiere activar la búsqueda de redes aunque la conexión Wi-Fi esté desactivada.\n\n¿Permitir para todas las aplicaciones que quieran buscar redes?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permitir"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrar en modo silencio"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Sonido de notificación predeterminado"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Usar LED de notificaciones"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notificaciones de advertencia"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Notificaciones importantes emergentes"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Tono"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notificación"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utilizar volumen de llamada entrante para notificaciones"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Buscar"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Ajustes de búsqueda"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi, wi-fi, red, conexión"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Mostrar al bloquear"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Las notificaciones de carácter sensible no aparecerán en la pantalla de bloqueo"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Todas las notificaciones aparecerán en la pantalla de bloqueo"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interrupciones limitadas"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Configurar interrupciones limitadas"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interrupciones limitadas"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notificaciones"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"General"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Seguridad"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Cambios"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplicaciones"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Ajustes de notificaciones"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurar etiqueta NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Editar"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Toca una etiqueta para editarla..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Contraseña no válida. Vuelve a intentarlo."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Operación realizada correctamente"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Error al escribir datos en la etiqueta NFC. Si el problema persiste, prueba con otra etiqueta"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"No se puede editar la etiqueta NFC. Prueba con otra etiqueta."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-et-rEE/strings.xml b/res/values-et-rEE/strings.xml
index 13b64c0..fb57702 100644
--- a/res/values-et-rEE/strings.xml
+++ b/res/values-et-rEE/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Asukoht:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Külgnev CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Kärjeinfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Andmete katsed:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-teenus:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Rändlus:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" WPS on saadaval"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Kaitstud turbega <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", kaitstud turbega <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Sisestage võrgu parool."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Puudub"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Täpsema asukoha ja muude toimingute jaoks tahab rakendus <xliff:g id="APP_NAME">%1$s</xliff:g> võrkude skannimise sisse lülitada, isegi kui WiFi on välja lülitatud.\n\nKas lubada see kõigi rakenduste jaoks, mis skannida tahavad?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Luba"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibreeri hääletus režiimis"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Märguande vaikeheli"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Vilkuv teatise tuli"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Tähelepanu juhtim. märguanded"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Kuvatakse olulised märguanded"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Helin"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Teatis"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Kasuta teatiste jaoks sissetuleva kõne helitugevust"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Otsing"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Otsinguseaded"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wifi-võrgu ühendus"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Kuva lukustatuna"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Tundliku sisuga märguanne on lukustuskuval peidet."</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Lukustuskuval näidatakse kogu märguande sisu"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Piiratud katkestustega"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Piiratud katkestuste seadistus"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Piiratud katkestustega"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Märguanded"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Üldine"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Turvalisus"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Kohendused"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Rakendused"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Märguandeseaded"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"WiFi NFC-kiibi seadistamine"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Kirjuta"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Kirjutamiseks puudutage kiipi ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Vale parool, proovige uuesti."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Õnnestus!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"NFC-kiibile ei saa andmeid kirjutada. Kui probleem püsib, proovige muud kiipi"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC-kiip ei ole kirjutatav. Kasutage muud kiipi."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-fa/strings.xml b/res/values-fa/strings.xml
index 29dec77..c468cbd 100644
--- a/res/values-fa/strings.xml
+++ b/res/values-fa/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"مکان:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"‏CID مجاور:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"تلاش‌های داده:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"‏سرویس GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"رومینگ:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">"، ایمن شده با <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"گذرواژه شبکه خود را وارد کنید."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"هیچکدام"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"‏برای بهبود دقت موقعیت مکانی و مقاصد دیگر، <xliff:g id="APP_NAME">%1$s</xliff:g> می‌خواهد اسکن کردن شبکه را فعال کند، حتی هنگامی که Wi-Fi خاموش است.\n\nاین مورد را برای همه برنامه‌هایی که می‌خواهند اسکن کنند مجاز می‌کنید؟"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"مجاز"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"لرزش در حالت بی‌صدا"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"صدای اعلان پیش‌فرض"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"چراغ اعلان چشمک بزند"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"اعلان‌های بازشو"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"اعلان‌های مهم نمایان خواهند شد"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"آهنگ زنگ"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"اعلان"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"استفاده از صدای تماس ورودی برای اعلان‌ها"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"جستجو"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"تنظیمات جستجو"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"‏wifi ‏اتصال شبکه wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"نمایش روی صفحه قفل شده"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"محتوای اعلان‌های حساس روی صفحه قفل پنهان خواهد شد"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"کلیه محتوای اعلان روی صفحه قفل نشان داده می‌شود"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"وقفه‌های محدود"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"پیکربندی وقفه‌های محدود"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"وقفه‌های محدود"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"اعلان‌ها"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"کلی"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"امنیت"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"برنامه‌ها"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"تنظیمات اعلان"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"‏تنظیم برچسب NFC برای WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"نوشتن"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"ضربه زدن روی یک برچسب برای نوشتن..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"گذرواژه نادرست است، دوباره امتحان کنید."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"موفق شدید!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"‏نوشتن داده برای برچسب NFC ممکن نیست. اگر مشکل ادامه یافت، یک برچسب متفاوت را امتحان کنید"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"‏برچسب NFC قابل نوشتن نیست. لطفاً از یک برچسب متفاوت استفاده کنید."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-fi/strings.xml b/res/values-fi/strings.xml
index 4205ca9..dff0ce4 100644
--- a/res/values-fi/strings.xml
+++ b/res/values-fi/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Sijainti:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Naapuri-CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRt-tiedot:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Tiedonsiirtoyrityksiä:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-palvelu:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -543,14 +544,14 @@
     <string name="android_beam_explained" msgid="6981652347448777459">"Kun tämä ominaisuus on käytössä, voit lähettää sovellusten sisältöä toiseen NFC-yhteensopivaan laitteeseen pitämällä laitteita lähekkäin. Voit lähettää esimerkiksi selaimen sivuja, YouTube-videoita ja yhteystietoja.\n\nAseta laitteet lähekkäin (yleensä taustat vastakkain) ja kosketa näyttöä. Sovellus määrittää lähetettävät tiedot."</string>
     <string name="nsd_quick_toggle_title" msgid="3125572815278848258">"Verkkopalveluhaku"</string>
     <string name="nsd_quick_toggle_summary" msgid="155692215972781276">"Anna muiden laitteiden sovelluksien löytää tämän laitteen sovelluksia"</string>
-    <string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wifi"</string>
+    <string name="wifi_quick_toggle_title" msgid="8850161330437693895">"Wi-Fi"</string>
     <string name="wifi_quick_toggle_summary" msgid="2696547080481267642">"Ota wifi käyttöön"</string>
-    <string name="wifi_settings" msgid="29722149822540994">"Wifi"</string>
-    <string name="wifi_settings_category" msgid="8719175790520448014">"Wifi-asetukset"</string>
-    <string name="wifi_settings_title" msgid="3103415012485692233">"Wifi"</string>
+    <string name="wifi_settings" msgid="29722149822540994">"Wi-Fi"</string>
+    <string name="wifi_settings_category" msgid="8719175790520448014">"Wi-Fi-asetukset"</string>
+    <string name="wifi_settings_title" msgid="3103415012485692233">"Wi-Fi"</string>
     <string name="wifi_settings_summary" msgid="668767638556052820">"Ota käyttöön ja hallinnoi langattoman yhteyden tukiasemia"</string>
     <string name="wifi_setup_wizard_title" msgid="8242230950011819054">"Valitse wifi-verkko"</string>
-    <string name="wifi_starting" msgid="6732377932749942954">"Wifi-yhteyttä otetaan käyttöön…"</string>
+    <string name="wifi_starting" msgid="6732377932749942954">"Wi-Fi-yhteyttä otetaan käyttöön…"</string>
     <string name="wifi_stopping" msgid="8952524572499500804">"Poistetaan wifi-yhteyttä käytöstä…"</string>
     <string name="wifi_error" msgid="3207971103917128179">"Virhe"</string>
     <string name="wifi_in_airplane_mode" msgid="8652520421778203796">"Lentokonetilassa"</string>
@@ -567,10 +568,10 @@
     <string name="wifi_scan_notify_remember_choice" msgid="5340097010842405981">"Älä näytä uudelleen"</string>
     <string name="wifi_setting_sleep_policy_title" msgid="5149574280392680092">"Pidä wifi käytössä virransäästötilassa"</string>
     <string name="wifi_setting_sleep_policy_error" msgid="8174902072673071961">"Asetuksen vaihtaminen epäonnistui"</string>
-    <string name="wifi_suspend_optimizations" msgid="1220174276403689487">"Wifi-optimointi"</string>
+    <string name="wifi_suspend_optimizations" msgid="1220174276403689487">"Wi-Fi-optimointi"</string>
     <string name="wifi_suspend_optimizations_summary" msgid="4151428966089116856">"Vähennä akun kulutusta, kun wifi on käytössä"</string>
     <string name="wifi_add_network" msgid="6234851776910938957">"Lisää verkko"</string>
-    <string name="wifi_access_points" msgid="7053990007031968609">"Wifi-verkot"</string>
+    <string name="wifi_access_points" msgid="7053990007031968609">"Wi-Fi-verkot"</string>
     <string name="wifi_menu_wps_pbc" msgid="2668564692207863017">"WPS-painike"</string>
     <string name="wifi_menu_more_options" msgid="2448097861752719396">"Lisää asetuksia"</string>
     <string name="wifi_menu_wps_pin" msgid="6426448256268695933">"WPS-PIN"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS käytettävissä)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Salaus: <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", salaus: <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Kirjoita verkkosi salasana."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ei mitään"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> haluaa parantaa sijainnin tarkkuutta ja suorittaa muita toimintoja ottamalla verkon etsinnän käyttöön, vaikka wifi-yhteys ei ole käytössä.\n\nAnnetaanko tämä lupa kaikille sovelluksille, jotka haluavat etsiä verkkoja?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Salli"</string>
@@ -647,8 +649,8 @@
     <string name="wifi_and_mobile_skipped_message" product="default" msgid="3773473163264984767">"VAROITUS: Puhelin ei voi vahvistaa, että ohjelmisto on ajan tasalla, ennen kuin muodostat internetyhteyden."</string>
     <string name="wifi_connect_failed_message" product="tablet" msgid="4474691090681670156">"Tablet-laite ei voi muodostaa yhteyttä tähän wifi-verkkoon."</string>
     <string name="wifi_connect_failed_message" product="default" msgid="2185803140161396572">"Puhelin ei voi muodostaa yhteyttä tähän wifi-verkkoon."</string>
-    <string name="wifi_advanced_titlebar" msgid="4485841401774142908">"Wifi-lisäasetukset"</string>
-    <string name="wifi_setting_frequency_band_title" msgid="3655327399028584656">"Wifi-taajuusalue"</string>
+    <string name="wifi_advanced_titlebar" msgid="4485841401774142908">"Wi-Fi-lisäasetukset"</string>
+    <string name="wifi_setting_frequency_band_title" msgid="3655327399028584656">"Wi-Fi-taajuusalue"</string>
     <string name="wifi_setting_frequency_band_summary" msgid="3250740757118009784">"Määritä toiminnan taajuusalue"</string>
     <string name="wifi_setting_frequency_band_error" msgid="837281974489794378">"Ongelma taajuusalueen asettamisessa."</string>
     <string name="wifi_advanced_mac_address_title" msgid="6571335466330978393">"MAC-osoite"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Käytä värinää äänettömässä tilassa"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Ilmoituksen oletusääni"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Vilkuta ilmoitusvaloa"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Varoitusilmoitukset"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Tärkeät ilmoitukset näytetään"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Soittoääni"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Ilmoitus"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Käytä ilmoituksille puhelun äänenvoimakkuutta"</string>
@@ -830,7 +832,7 @@
     <string name="status_signal_strength" msgid="3732655254188304547">"Signaalin vahvuus"</string>
     <string name="status_roaming" msgid="2638800467430913403">"Roaming"</string>
     <string name="status_operator" msgid="2274875196954742087">"Verkko"</string>
-    <string name="status_wifi_mac_address" msgid="2202206684020765378">"Wifi-yhteyden MAC-osoite"</string>
+    <string name="status_wifi_mac_address" msgid="2202206684020765378">"Wi-Fi-yhteyden MAC-osoite"</string>
     <string name="status_bt_address" msgid="4195174192087439720">"Bluetooth-osoite"</string>
     <string name="status_serial_number" msgid="2257111183374628137">"Sarjanumero"</string>
     <string name="status_unavailable" msgid="7862009036663793314">"Ei käytettävissä"</string>
@@ -1020,7 +1022,7 @@
     <string name="location_mode_high_accuracy_description" msgid="6418936349431602808">"Paikanna GPS:n ja wifi- ja mobiiliverkkojen avulla"</string>
     <string name="location_mode_battery_saving_description" msgid="1728668969743485109">"Paikanna wifi- ja mobiiliverkkojen avulla"</string>
     <string name="location_mode_sensors_only_description" msgid="7178415350457794366">"Paikanna GPS:n avulla"</string>
-    <string name="location_network_based" msgid="9134175479520582215">"Wifi- ja mobiiliverkkosijainti"</string>
+    <string name="location_network_based" msgid="9134175479520582215">"Wi-Fi- ja mobiiliverkkosijainti"</string>
     <string name="location_neighborhood_level" msgid="5626515380188353712">"Anna sovellusten arvioida sijaintisi Googlen sijaintipalvelulla. Anonyymejä sijaintitietoja kerätään ja lähetetään Googlelle."</string>
     <string name="location_neighborhood_level_wifi" msgid="4234820941954812210">"Sijainti on määritetty wifi-yhteyden perusteella"</string>
     <string name="location_gps" msgid="8392461023569708478">"GPS-satelliitit"</string>
@@ -1494,14 +1496,14 @@
     <string name="battery_stats_charging_label" msgid="4223311142875178785">"Ladataan"</string>
     <string name="battery_stats_screen_on_label" msgid="7150221809877509708">"Ruutu käytössä"</string>
     <string name="battery_stats_gps_on_label" msgid="1193657533641951256">"GPS käytössä"</string>
-    <string name="battery_stats_wifi_running_label" msgid="1845839195549226252">"Wifi"</string>
+    <string name="battery_stats_wifi_running_label" msgid="1845839195549226252">"Wi-Fi"</string>
     <string name="battery_stats_wake_lock_label" msgid="1908942681902324095">"Käytössä"</string>
     <string name="battery_stats_phone_signal_label" msgid="4137799310329041341">"Mobiiliverkon signaali"</string>
     <!-- no translation found for battery_stats_last_duration (1535831453827905957) -->
     <skip />
     <string name="awake" msgid="387122265874485088">"Laitteen käytössäoloaika"</string>
-    <string name="wifi_on_time" msgid="3208518458663637035">"Wifi-yhteyden käytössäoloaika"</string>
-    <string name="bluetooth_on_time" msgid="3056108148042308690">"Wifi-yhteyden käytössäoloaika"</string>
+    <string name="wifi_on_time" msgid="3208518458663637035">"Wi-Fi-yhteyden käytössäoloaika"</string>
+    <string name="bluetooth_on_time" msgid="3056108148042308690">"Wi-Fi-yhteyden käytössäoloaika"</string>
     <string name="usage_name_percent" msgid="7976919382448235858">"<xliff:g id="NAME">%1$s</xliff:g> -  <xliff:g id="NUMBER">%2$s</xliff:g><xliff:g id="PERCENT">%%</xliff:g>"</string>
     <string name="history_details_title" msgid="3608240585315506067">"Historiatiedot"</string>
     <string name="details_title" msgid="3792801565213935385">"Käyttötiedot"</string>
@@ -1509,7 +1511,7 @@
     <string name="controls_subtitle" msgid="390468421138288702">"Säädä virrankäyttöä"</string>
     <string name="packages_subtitle" msgid="4736416171658062768">"Sisältyvät paketit"</string>
     <string name="power_screen" msgid="3023346080675904613">"Ruutu"</string>
-    <string name="power_wifi" msgid="1135085252964054957">"Wifi"</string>
+    <string name="power_wifi" msgid="1135085252964054957">"Wi-Fi"</string>
     <string name="power_bluetooth" msgid="4373329044379008289">"Bluetooth"</string>
     <string name="power_cell" msgid="6596471490976003056">"Kennot virransäästötilassa"</string>
     <string name="power_phone" msgid="5392641106474567277">"Äänipuhelut"</string>
@@ -1521,7 +1523,7 @@
     <string name="usage_type_cpu_foreground" msgid="6500579611933211831">"Suorittimen käyttö etualalla"</string>
     <string name="usage_type_wake_lock" msgid="5125438890233677880">"Ei virransäästötilaa"</string>
     <string name="usage_type_gps" msgid="7989688715128160790">"GPS"</string>
-    <string name="usage_type_wifi_running" msgid="3134357198266380400">"Wifi on käytössä"</string>
+    <string name="usage_type_wifi_running" msgid="3134357198266380400">"Wi-Fi on käytössä"</string>
     <string name="usage_type_phone" product="tablet" msgid="262638572890253393">"Tablet"</string>
     <string name="usage_type_phone" product="default" msgid="9108247984998041853">"Puhelin"</string>
     <string name="usage_type_data_send" msgid="8971710128438365919">"Lähetetyt mobiilipaketit"</string>
@@ -1541,7 +1543,7 @@
     <string name="battery_action_app_details" msgid="7861051816778419018">"Sovelluksen tiedot"</string>
     <string name="battery_action_app_settings" msgid="4570481408106287454">"Sovellusasetukset"</string>
     <string name="battery_action_display" msgid="7338551244519110831">"Ruudun asetukset"</string>
-    <string name="battery_action_wifi" msgid="8181553479021841207">"Wifi-asetukset"</string>
+    <string name="battery_action_wifi" msgid="8181553479021841207">"Wi-Fi-asetukset"</string>
     <string name="battery_action_bluetooth" msgid="8374789049507723142">"Bluetooth-asetukset"</string>
     <string name="battery_desc_voice" msgid="8980322055722959211">"Äänipuhelujen käyttämä akku"</string>
     <string name="battery_desc_standby" product="tablet" msgid="6284747418668280364">"Käytetty akun virta tablet-laitteen ollessa pois käytöstä"</string>
@@ -1550,7 +1552,7 @@
     <string name="battery_sugg_radio" msgid="8211336978326295047">"Vaihda lentokonetilaan säästääksesi akkua ollessasi katvealueella."</string>
     <string name="battery_desc_display" msgid="5432795282958076557">"Näytön ja taustavalon käyttämä akku"</string>
     <string name="battery_sugg_display" msgid="3370202402045141760">"Vähennä näytön kirkkautta ja/tai näytön sammumista"</string>
-    <string name="battery_desc_wifi" msgid="2375567464707394131">"Wifi-yhteyden käyttämä akku"</string>
+    <string name="battery_desc_wifi" msgid="2375567464707394131">"Wi-Fi-yhteyden käyttämä akku"</string>
     <string name="battery_sugg_wifi" msgid="3355461362094706957">"Poista wifi käytöstä, kun sitä ei käytetä tai kun yhteys ei ole käytettävissä"</string>
     <string name="battery_desc_bluetooth" msgid="8069070756186680367">"Bluetooth-yhteyden käyttämä akun virta"</string>
     <string name="battery_sugg_bluetooth_basic" msgid="1942935021750897422">"Poista Bluetooth-yhteys käytöstä, kun et käytä sitä."</string>
@@ -1655,7 +1657,7 @@
     <string name="gadget_state_off" msgid="5220212352953066317">"pois käytöstä"</string>
     <string name="gadget_state_turning_on" msgid="3395992057029439039">"otetaan käyttöön"</string>
     <string name="gadget_state_turning_off" msgid="2395546048102176157">"poistetaan käytöstä"</string>
-    <string name="gadget_wifi" msgid="4712584536500629417">"Wifi"</string>
+    <string name="gadget_wifi" msgid="4712584536500629417">"Wi-Fi"</string>
     <string name="gadget_bluetooth" msgid="8998572807378694410">"Bluetooth"</string>
     <string name="gadget_location" msgid="2974757497945178165">"Sijainti"</string>
     <string name="gadget_sync" msgid="858895763714222152">"Synkronointi"</string>
@@ -1727,7 +1729,7 @@
     <string name="sound_category_notification_title" msgid="3502115998790286943">"Ilmoitukset"</string>
     <string name="sound_category_call_ringtone_vibrate_title" msgid="1543777228646645163">"Soittoääni ja värinä"</string>
     <string name="sound_category_system_title" msgid="1480844520622721141">"Järjestelmä"</string>
-    <string name="wifi_setup_title" msgid="2970260757780025029">"Wifi-asetukset"</string>
+    <string name="wifi_setup_title" msgid="2970260757780025029">"Wi-Fi-asetukset"</string>
     <string name="wifi_setup_title_editing_network" msgid="6020614644556717979">"Yhdistä wifi-verkkoon <xliff:g id="NETWORK_NAME">%s</xliff:g>"</string>
     <string name="wifi_setup_title_connecting_network" msgid="5572226790101017822">"Yhdistetään wifi-verkkoon <xliff:g id="NETWORK_NAME">%s</xliff:g>…"</string>
     <string name="wifi_setup_title_connected_network" msgid="1608788657122010919">"Yhdistetty wifi-verkkoon <xliff:g id="NETWORK_NAME">%s</xliff:g>"</string>
@@ -1885,7 +1887,7 @@
     <string name="data_usage_disable_4g_limit" msgid="6233554774946681175">"Aseta 4G-tiedonsiirtoraja"</string>
     <string name="data_usage_disable_3g_limit" msgid="2558557840444266906">"Aseta 2G-3G-tiedonsiirtoraja"</string>
     <string name="data_usage_disable_wifi_limit" msgid="1394901415264660888">"Aseta wifi-tiedons.raja"</string>
-    <string name="data_usage_tab_wifi" msgid="481146038146585749">"Wifi"</string>
+    <string name="data_usage_tab_wifi" msgid="481146038146585749">"Wi-Fi"</string>
     <string name="data_usage_tab_ethernet" msgid="7298064366282319911">"Ethernet"</string>
     <string name="data_usage_tab_mobile" msgid="454140350007299045">"Mobiili"</string>
     <string name="data_usage_tab_4g" msgid="1301978716067512235">"4G"</string>
@@ -1930,7 +1932,7 @@
     <string name="data_usage_metered_title" msgid="6204750602856383278">"Mobiiliyhteyden hotspotit"</string>
     <string name="data_usage_metered_body" msgid="4959032833706695848">"Valitse wifi-verkot, joita käytetään mobiiliyhteyden hotspotteina. Sovelluksia voidaan kieltää käyttämästä näitä verkkoja niiden toimiessa taustalla. Sovellukset voivat myös näyttää varoituksen ennen suurien tiedostojen lataamista näiden verkkojen kautta."</string>
     <string name="data_usage_metered_mobile" msgid="5423305619126978393">"Mobiiliverkot"</string>
-    <string name="data_usage_metered_wifi" msgid="8540872226614404873">"Wifi-verkot"</string>
+    <string name="data_usage_metered_wifi" msgid="8540872226614404873">"Wi-Fi-verkot"</string>
     <string name="data_usage_metered_wifi_disabled" msgid="5502020778468643732">"Ota wifi käyttöön valitaksesi mobiiliyhteyden hotspotteja."</string>
     <string name="cryptkeeper_emergency_call" msgid="198578731586097145">"Hätäpuhelu"</string>
     <string name="cryptkeeper_return_to_call" msgid="5613717339452772491">"Palaa puheluun"</string>
@@ -2066,7 +2068,7 @@
     <string name="user_restrictions_controlled_by" msgid="3164078767438313899">"Ohjaaja: <xliff:g id="APP">%1$s</xliff:g>"</string>
     <string name="app_not_supported_in_limited" msgid="913035259626149121">"Tätä sovellusta ei tueta rajoitetuissa profiileissa"</string>
     <string name="app_sees_restricted_accounts" msgid="7503264525057246240">"Tämä sovellus saa käyttää tilejäsi"</string>
-    <string name="restriction_wifi_config_title" msgid="8889556384136994814">"Wifi- ja mobiiliverkko"</string>
+    <string name="restriction_wifi_config_title" msgid="8889556384136994814">"Wi-Fi- ja mobiiliverkko"</string>
     <string name="restriction_wifi_config_summary" msgid="70888791513065244">"Salli wifi- ja mobiiliverkkoasetuksien muokkaaminen"</string>
     <string name="restriction_bluetooth_config_title" msgid="8871681580962503671">"Bluetooth"</string>
     <string name="restriction_bluetooth_config_summary" msgid="8372319681287562506">"Salli Bluetooth-parien ja -asetuksien muokkaaminen"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Haku"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Hakuasetukset"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi verkko yhteys"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Näytä lukitusruudussa"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Henk.koht. ilmoitukset eivät näy lukitusruudussa"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Kaikki ilmoitukset näkyvät lukitusruudussa"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Mahdollisimman vähän häiriöitä"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Mahd. väh. häiriöitä -määritys"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Mahdollisimman vähän häiriöitä"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Ilmoitukset"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Yleiset"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Suojaus"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Säädöt"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Sovellukset"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Ilmoitusasetukset"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Wi-Fi-yhteyden NFC-tunnisteen asetus"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Kirjoita"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Kirjoita napauttamalla tunnistetta…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Virheellinen salasana, yritä uudelleen."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Onnistui!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Tietojen kirjoittaminen NFC-tunnisteeseen epäonnistui. Jos ongelma jatkuu, kokeile toista tunnistetta."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC-tunnisteeseen ei voi kirjoittaa. Käytä toista tunnistetta."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-fr-rCA/strings.xml b/res/values-fr-rCA/strings.xml
index 33d2dd3..abd8b25 100644
--- a/res/values-fr-rCA/strings.xml
+++ b/res/values-fr-rCA/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Emplacement :"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID voisin :"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Infos sur la cellule :"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo :"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Tentatives :"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Service GPRS :"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Itinérance :"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponible)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Sécurisé par <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", sécurisé par <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Entrez votre mot de passe réseau."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Aucun"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Pour améliorer la précision de la position et à d\'autres fins, <xliff:g id="APP_NAME">%1$s</xliff:g> souhaite activer la recherche de réseaux, même lorsque le Wi-Fi est désactivé.\n\nDonner cette autorisation à toutes les applications souhaitant activer la recherche de réseaux?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Autoriser"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrer en mode silencieux"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Son de notification par défaut"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Faire clignoter le voyant de notification"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notifications anticipées"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Les notif. import. s\'affichent ds fen. context."</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Sonnerie"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notification"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utiliser le volume des appels entrants pour les notifications"</string>
@@ -2100,16 +2102,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Rechercher"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Paramètres de recherche"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi connexion réseau wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Aff. si écran verrouillé"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Notif. sensibles masquées sur écran verrouillage"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Toutes notif. affichées sur écran de verrouillage"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interruptions limitées"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Config. interruptions limitées"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interruptions limitées"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notifications"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Général"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sécurité"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Ajustements"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Applications"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Paramètres de notification"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurer une balise NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Écrire"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Touchez une balise pour pour écrire..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Mot de passe non valide, veuillez réessayer."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Succès!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Impossible d\'écrire des données sur la balise NFC. Si le problème persiste, essayez avec une autre balise."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"La balise NFC n\'est pas accessible en écriture. Veuillez en utiliser un autre."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 72e2132..68b7fa8 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Emplacement :"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID voisin :"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Infos sur la cellule :"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo :"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Tentatives :"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Service GPRS :"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Itinérance :"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponible)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Sécurisé par <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", sécurisé par <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Veuillez saisir votre mot de passe réseau."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Aucune"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Pour améliorer la précision de la position et à d\'autres fins, <xliff:g id="APP_NAME">%1$s</xliff:g> souhaite activer la recherche de réseaux, même lorsque le Wi-Fi est désactivé.\n\nDonner cette autorisation à toutes les applications souhaitant activer la recherche de réseaux ?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Autoriser"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrer en mode silencieux"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Son de notification par défaut"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Voyant de notification"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notifications anticipées"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Notif. importantes affichées dans des pop-up."</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Sonnerie"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notification"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utiliser le volume des appels entrants pour les notifications"</string>
@@ -2100,16 +2102,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Rechercher"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Paramètres de recherche"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi réseau connexion"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Aff. si écran verrouillé"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Notif. sensibles masquées sur écran verrouillage"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Toutes les notif. affichées sur écran verrouillage"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interruptions limitées"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Config. interruptions limitées"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interruptions limitées"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notifications"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Général"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sécurité"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Ajustements"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Applications"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Paramètres de notification"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurer un tag NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Modifier"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Appuyer sur un tag pour le modifier…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Mot de passe erroné. Veuillez réessayer."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Opération réussie."</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Impossible de modifier des données sur le tag NFC. Si le problème persiste, essayez avec un autre tag."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Le tag NFC n\'est pas accessible en écriture. Veuillez en utiliser un autre."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-hi/strings.xml b/res/values-hi/strings.xml
index f0dd987..12f61cd 100644
--- a/res/values-hi/strings.xml
+++ b/res/values-hi/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"स्थान:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"समीपस्‍थ CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"सेल जानकारी:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"जानकारी स्क्रीन:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"डेटा प्रयास:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS सेवा:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"रोमिंग:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> द्वारा सुरक्षित"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"अपना नेटवर्क पासवर्ड डालें."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"कोई नहीं"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"स्थान की सटीकता को बेहतर बनाने और अन्य प्रयोजनों के लिए, Wi-Fi बंद होने पर भी <xliff:g id="APP_NAME">%1$s</xliff:g> नेटवर्क स्कैनिंग को चालू करना चाहता है.\n\nइसकी अनुमति उन सभी ऐप्स  के लिए दें जो स्कैन करना चाहते हैं?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"अनुमति दें"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"मौन होने पर कंपन करें"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"सामान्य सूचना ध्वनि"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"पल्‍स सूचना लाइट"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"अग्रिम सूचनाएं"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"महत्वपूर्ण सूचनाएं पॉप अप हो जाएंगी"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"रिंगटोन"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"सूचना"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"सूचनाओं के लिए इनकमिंग कॉल वॉल्‍यूम का उपयोग करें"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"खोजें"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"खोज सेटिंग"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi नेटवर्क कनेक्शन"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"लॉक होने पर दिखाएं"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"संवेदी सूचना सामग्रियां लॉक स्क्रीन पर छिपी रहेंगी"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"सभी सूचना सामग्रियां लॉक स्क्रीन पर दिखाई जाएंगी"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"सीमित बाधाएं"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"सीमित बाधाओं को कॉन्फ़िगर करें"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"सीमित बाधाएं"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"सूचनाएं"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"सामान्य"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"सुरक्षा"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"ट्वीक"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"ऐप्स"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"सूचना सेटिंग"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"WiFi NFC टैग सेट करना"</string>
+    <string name="write_tag" msgid="8571858602896222537">"लिखें"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"लिखने के लिए टैग टैप करें..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"अमान्य पासवर्ड, पुनः प्रयास करें."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"सफल!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"NFC टैग में डेटा लिखने में असमर्थ. यदि समस्या बनी रहती है, तो कोई भिन्न टैग आज़माकर देखें"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC टैग लिखने योग्य नहीं है. कृपया किसी भिन्न टैग का उपयोग करें."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-hr/strings.xml b/res/values-hr/strings.xml
index 0df43a7..d4a42cb 100644
--- a/res/values-hr/strings.xml
+++ b/res/values-hr/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Lokacija:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Susjedski CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Informacije o ćeliji:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Informacije o DcRt:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Pokušaji za podatke:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS usluga:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS dostupan)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Osigurano značajkom <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", osigurano značajkom <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Unesite mrežnu zaporku."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nema"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Radi poboljšanja preciznosti lokacije kao i u druge svrhe aplikacija <xliff:g id="APP_NAME">%1$s</xliff:g> želi uključiti pregledavanje mreže, čak i kada je Wi-Fi isključen.\n\nŽelite li to dozvoliti za sve aplikacije koje žele izvoditi pregledavanje?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Dopusti"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibracija ako je bešumno"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Zadani zvuk obavijesti"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulsno svjetlo obavijesti"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Upozorenja"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Prikaz važnih obavijesti u skočnom prozoru"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Zvuk zvona"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Obavijest"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Koristi glasnoću dolaznog poziva za obavijesti"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Pretražite"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Postavke pretraživanja"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi mreža veza"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Prikaži kad je zaključano"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Osjetljivi sadržaji neće biti na zaključ. zaslonu"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Na zaključanom zaslonu prikazuju se sve obavijesti"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ograničeni prekidi"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfiguriraj ograničeni prekid"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ograničeni prekidi"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Obavijesti"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Općenito"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sigurnost"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Prilagođavanja"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplikacije"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Postavke obavijesti"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Postavljanje oznake NFC za WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Piši"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Dodirnite oznaku da biste zapisali podatke..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Nevažeća zaporka, pokušajte ponovo."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Uspjeli ste!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Nije moguće zapisati podatke u oznaku NFC. Ako problem potraje, pokušajte upotrijebiti drugačiju oznaku."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"U oznaku NFC ne mogu se zapisati podaci. Upotrijebite drugačiju oznaku."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-hu/strings.xml b/res/values-hu/strings.xml
index 6e8254a..2e281c4 100644
--- a/res/values-hu/strings.xml
+++ b/res/values-hu/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Hely:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Környező CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Cellainformáció:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Adatkísérletek:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS szolgáltatás:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Barangolás:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS elérhető)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> védelemmel"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> védelemmel"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Adja meg hálózati jelszavát."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nincs"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"A helymeghatározás pontosságának javítása és egyéb célok érdekében a(z) <xliff:g id="APP_NAME">%1$s</xliff:g> szeretné engedélyezni a hálózatkeresést még kikapcsolt Wi-Fi mellett is.\n\nEngedélyezi ezt az összes olyan alkalmazásnál, amely keresést akar végezni?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Engedélyezés"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Rezgés néma üzemmódban"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Alapértelmezett értesítési hang"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Villogó értesítő fény"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Előrejelzési értesítések"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"A fontos értesítések felugranak"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Csengőhang"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Értesítés"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Bejövő hívások hangerejének használata az értesítéseknél"</string>
@@ -2100,16 +2102,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Keresés"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Keresési beállítások"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi, wi-fi hálózati kapcsolat"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Megjelenítés zároláskor"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Bizalmas értesítések elrejtése lezárási képernyőn"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Minden értesítés látható lesz a lezárási képernyőn"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Korlátozott számú megszakítás"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Korlátozott számú megszakítás"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Korlátozott megszakítások"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Értesítések"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Általános"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Biztonság"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Trükkök"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Alkalmazások"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Értesítési beállítások"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Wi-Fi- és NFC-címke beállítása"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Írás"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Az íráshoz érintsen meg egy címkét…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Érvénytelen jelszó, próbálja újra."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Sikerült!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Nem sikerült írni az NFC-címkére. Ha a probléma továbbra is fennáll, próbálkozzon egy másik címkével"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Az NFC-címke nem írható. Használjon egy másik címkét."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-hy-rAM/strings.xml b/res/values-hy-rAM/strings.xml
index 2792d6c..ae7a788 100644
--- a/res/values-hy-rAM/strings.xml
+++ b/res/values-hy-rAM/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Տեղակայում."</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Կից CID՝"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Բջջայինի տեղեկություններ`"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Տվյալների փորձերը՝"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS ծառայություն`"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Ռոումինգ`"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", ապահովված <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>-ի հետ"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Մուտքագրեք ձեր ցանցային գաղտնաբառը:"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ոչ մեկը"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Տեղանքի ճշգրտությունը կատարելագործելու կամ այլ նպատակների համար` <xliff:g id="APP_NAME">%1$s</xliff:g>-ը ցանկանում է միացնել ցանցի սկանավորումը, նույնիսկ եթե Wi-Fi-ը անջատված է:\n\nԹույլատրե՞լ բոլոր սկանավորում ցանկացող ծրագրերին:"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Թույլատրել"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Թրթռալ, երբ անձայն ռեժիմում է"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Ծանուցման լռելյայն ձայնը"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Ծանուցման լույսի թարթում"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Ցույց տալ կարևոր ծանուցումները"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Կարևոր ծանուցումները կերևան ելնող պատուհանում"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Զանգերանգ"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Ծանուցում"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Օգտագործել մուտքային ձայնի բարձրությունը ծանուցումների համար"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Որոնել"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Որոնման կարգավորումներ"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi ցանցային կապ"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Ցույց տալ, երբ կողպված է"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Զգայուն ծանուցման բովանդակությունը չի երևա կողպէկրանին"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Ցանկացած ծանուցման բովանդակություն կերևա կողպէկրանին"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Սահմանափակ ընդհատումներ"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Կարգավորել սահմանափակ ընդհատումները"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Սահմանափակ ընդհատումներ"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Ծանուցումներ"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Ընդհանուր"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Անվտանգություն"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Մեջբերումներ"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Ծրագրեր"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Ծանուցման կարգավորումներ"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Կարգավորեք WiFi NFC պիտակը"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Գրել"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Հպեք պիտակի վրա՝ գրելու համար..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Գաղտնաբառը սխալ է, կրկին փորձեք:"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Հաջողվեց:"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Անհնար է գրել տվյալները NFC պիտակում: Եթե ​​խնդիրը չկարգավորվի, փորձեք մեկ այլ պիտակ"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC պիտակում հնարավոր չէ գրել: Խնդրում ենք օգտագործել այլ պիտակ:"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-in/strings.xml b/res/values-in/strings.xml
index 9184617..d431bde 100644
--- a/res/values-in/strings.xml
+++ b/res/values-in/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Lokasi:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID bersebelahan:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Upaya data:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Layanan GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS tersedia)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Diamankan dengan <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", diamankan dengan <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Masukkan sandi jaringan Anda."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Tidak Ada"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Untuk meningkatkan ketepatan lokasi dan untuk tujuan lainnya, <xliff:g id="APP_NAME">%1$s</xliff:g> ingin mengaktifkan pemindaian jaringan, bahkan saat Wi-Fi sedang tidak aktif.\n\nIzinkan ini untuk semua aplikasi yang ingin memindai?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Izinkan"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Getar saat senyap"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Suara pemberitahuan default"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Kedipkan lampu pemberitahuan"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Pemberitahuan Pengumuman"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Pemberitahuan penting akan muncul"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Nada dering"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Pemberitahuan"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Gunakan volume panggilan masuk untuk pemberitahuan"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Telusuri"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Setelan penelusuran"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi network connection sambungan jaringan"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Tampilkan saat terkunci"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Isi notifikasi sensitif tak tampil di layar kunci"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Semua konten notifikasi tampil di layar kunci"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Gangguan terbatas"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfigurasi gangguan terbatas"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Gangguan Terbatas"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notifikasi"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Umum"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Keamanan"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Otak-atik"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplikasi"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Setelan pemberitahuan"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Siapkan Tag NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Tulis"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Ketuk tag untuk menulis..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Sandi tidak valid, coba lagi."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Berhasil!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Tidak dapat menulis data ke tag NFC. Jika masalah berlanjut, coba tag lain"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Tag NFC tidak dapat ditulisi. Gunakan tag lain."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-it/strings.xml b/res/values-it/strings.xml
index fe27817..63beffd 100644
--- a/res/values-it/strings.xml
+++ b/res/values-it/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Posizione:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID adiacente:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Tentativi dati:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Servizio GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponibile)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Protetta con <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", protetta con <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Inserisci la password di rete."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nessuna"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Per migliorare la precisione della posizione e per altri scopi, <xliff:g id="APP_NAME">%1$s</xliff:g> chiede di attivare la ricerca della rete, anche quando il Wi-Fi è disattivato.\n\nConsetirlo a tutte le app che vogliono eseguire la ricerca?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Consenti"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibra in modalità silenziosa"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Suono di notifica predefinito"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Luce di notifica pulsante"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notifiche Heads Up"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Vengono visualizzate le notifiche importanti"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Suoneria"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notifica"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Usa volume chiamate in entrata per le notifiche"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Cerca"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Impostazioni di ricerca"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi connessione rete Wi-Fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Mostra quando bloccato"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Contenuti sensibili nascosti nella schermata di blocco"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Tutti i contenuti mostrati nella schermata di blocco"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interruzioni limitate"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Configura interruzioni limitate"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interruzioni limitate"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notifiche"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Generali"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sicurezza"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Regolazioni"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"App"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Impostazioni di notifica"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Imposta tag NFC WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Modifica"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tocca un tag per impostarlo..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Password non valida. Riprova."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Operazione riuscita."</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Impossibile inserire dati nel tag NFC. Se il problema persiste, prova con un tag diverso."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Il tag NFC non è modificabile. Utilizza un tag diverso."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-iw/strings.xml b/res/values-iw/strings.xml
index 35a95e9..068287a 100644
--- a/res/values-iw/strings.xml
+++ b/res/values-iw/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"מיקום:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"‏CID שכן:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"נתונים:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"ניסיונות נתונים:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"‏שירות GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"נדידה:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", מאובטח באמצעות <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"הזן את סיסמת הרשת שלך."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"ללא"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"‏לשיפור דיוק המיקום ולמטרות אחרות, <xliff:g id="APP_NAME">%1$s</xliff:g> רוצה להפעיל את סריקת הרשתות, גם כאשר ה-Wi-Fi כבוי.\n\nהאם להתיר זאת עבור כל האפליקציות שרוצות לסרוק?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"אפשר"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"רטט במצב שקט"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"צליל ברירת מחדל להתראה"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"תאורת התראה של אות"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"הודעות התראה"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"הודעות חשובות יופיעו כחלון קופץ"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"צלצול"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"התראה"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"השתמש בעוצמת הקול של שיחות נכנסות להתראות"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"חפש"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"הגדרות חיפוש"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"‏wifi wi-fi חיבור רשת"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"הצג כשהמסך נעול"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"תוכן הודעות רגישות יוסתר במסך הנעילה"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"כל תוכן ההודעות יוצג במסך הנעילה"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"הפרעות מוגבלות"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"הגדר הפרעות מוגבלות"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"הפרעות מוגבלות"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"הודעות"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"כללי"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"אבטחה"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"שיפורים"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"אפליקציות"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"הגדרות התראה"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"‏הגדר תג NFC עבור WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"כתוב"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"הקש על תג כדי לכתוב..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"סיסמה לא חוקית, נסה שוב."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"הצלחת!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"‏לא ניתן לכתוב נתונים לתג NFC. אם הבעיה נמשכת, נסה תג אחר"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"‏תג NFC אינו ניתן לכתיבה. השתמש בתג אחר."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index f6cd5b7..296e1df 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -209,6 +209,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"ロケーション:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"近くのCID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"セル情報:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"データの試行:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRSサービス:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"ローミング:"</string>
@@ -630,6 +631,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">"、<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>で保護"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"ネットワークパスワードを入力してください。"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"なし"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"現在地情報の精度向上やその他の目的で、<xliff:g id="APP_NAME">%1$s</xliff:g>ではWi-FiがOFFのときでもネットワークスキャンをオンにすることを要求しています。\n\nスキャンを必要とするすべてのアプリでスキャンを許可しますか?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"許可する"</string>
@@ -701,8 +703,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"マナーモード時のバイブレーション"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"デフォルトの通知音"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"光を点滅させて通知"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"重要な通知"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"重要な通知がポップアップ表示されます"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"着信音"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"通知"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"通知音にも着信音量を適用"</string>
@@ -2104,16 +2106,38 @@
     <string name="search_menu" msgid="7053532283559077164">"検索"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"検索設定"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi ネットワーク 接続"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"ロック時に表示"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"プライベートな通知内容はロック画面に表示されません"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"すべての通知内容がロック画面に表示されます"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"制限付き中断"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"制限付き中断を設定"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"制限付き中断"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"通知"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"全般"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"セキュリティ"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"アプリ"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"通知設定"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Wi-Fi NFCタグのセットアップ"</string>
+    <string name="write_tag" msgid="8571858602896222537">"書き込む"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"書き込むにはタグをタップしてください..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"パスワードが無効です。もう一度お試しください。"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"書き込み完了"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"NFCタグにデータを書き込めません。問題が解決しない場合は別のタグをお試しください。"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFCタグに書き込めません。別のタグを使用してください。"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ka-rGE/strings.xml b/res/values-ka-rGE/strings.xml
index dcde7e0..eeef572 100644
--- a/res/values-ka-rGE/strings.xml
+++ b/res/values-ka-rGE/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"მდებარეობა:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"მეზობელი CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"ქსელის ინფო:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"მონაცემების მცდელობები:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS სერვისი:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"როუმინგი:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", დაცული <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>-ის მეშვეობით"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"შეიყვანეთ თქვენი ქსელის პაროლი."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"არცერთი"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"მდებარეობის ზუსტი განსაზღვრის და სხვა ფუნქციების გასაუმჯობესებლად <xliff:g id="APP_NAME">%1$s</xliff:g>-ს სურს, გააქტიურდეს ქსელების მოძიება, მაშინაც კი, როცა გამორთულია Wi-Fi.\n\nმიეცეს ამის უფლება ყველა აპს?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"ნებართვა"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"ვიბრაცია დადუმებული ზარისას"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"ნაგულისხმევი ხმა შეტყობინებისთვის"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"მოვლენების ინდიკატორი"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"წინასწარი შეტყობინებები"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"მნიშვნელოვანი შეტყობინებები გაიხსნება"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"ზარი"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"შეტყობინებები"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"შემომავალი ზარის ხმის დონის გამოყენება შეტყობინებებისთვის"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"ძიება"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"ძიების პარამეტრები"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi ქსელის კავშირი"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"ჩვენება ჩაკეტვისას"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"სენსიტიური შინაარსის მქონე შეტყობინებები ჩაკეტილ ეკრანზე არ გამოჩნდება"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"ყველა შინაარსის მქონე შეტყობინებები გამოჩნდება ჩაკეტილ ეკრანზე"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"შეზღუდული შეწყვეტები"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"შეზღუდული წყვეტების კონფიგურაცია"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"შეზღუდული შეწყვეტები"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"შეტყობინებები"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"ზოგადი"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"უსაფრთხოება"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"მორგებები"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"აპები"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"შეტყობინების პარამეტრები"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"WiFi NFC თეგის დაყენება"</string>
+    <string name="write_tag" msgid="8571858602896222537">"ჩაწერა"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"შეეხეთ თეგს დასაწერად..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"პაროლი არასწორია, სცადეთ ისევ."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"წარმატება!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"NFC თეგზე მონაცემების ჩაწერა ვერ ხერხდება. თუ პრობლემა გამეორდება, სცადეთ სხვა თეგი"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC თეგი ჩაწერადი არ არის. გთხოვთ, გამოიყენოთ სხვა თეგი."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-km-rKH/strings.xml b/res/values-km-rKH/strings.xml
index 3257ef3..b7a5c79 100644
--- a/res/values-km-rKH/strings.xml
+++ b/res/values-km-rKH/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"ទីតាំង៖"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID នៅ​ជិត៖"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"ព័ត៌មាន​ចល័ត៖"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"ការ​សាកល្បង​​ទិន្នន័យ៖"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"សេវាកម្ម GPRS ៖"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"រ៉ូមីង៖"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", មាន​សុវត្ថិភាព​ជា​មួយ <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"បញ្ចូល​ពាក្យសម្ងាត់​បណ្ដាញ​របស់​អ្នក។"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"គ្មាន"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"ដើម្បី​បង្កើន​ភាព​ត្រឹមត្រូវ​ទីតាំង និង​សម្រាប់​គោល​បំណង​ផ្សេងៗ <xliff:g id="APP_NAME">%1$s</xliff:g> ចង់​បើក​ការ​វិភាគ រក​បណ្ដាញ ទោះ​បី​ជា​បិទ វ៉ាយហ្វាយ ក៏​ដោយ។\n\nអនុញ្ញាត​សម្រាប់​កម្មវិធី​ទាំងអស់​ដែល​អ្នក​ចង់​វិភាគ​រក?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"អនុញ្ញាត"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"ញ័រ​ពេល​ស្ងាត់"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"សំឡេង​ជូន​ដំណឹង​លំនាំដើម"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"ពន្លឺ​ជូន​ដំណឹង​ភ្លឺបភ្លែត"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"ទទួល​ការ​ជូនដំណឹង"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"ការ​ជូនដំណឹង​សំខាន់​នឹង​លេចឡើង"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"សំឡេង​រោទ៍"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"ការ​ជូន​ដំណឹង"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"ប្រើ​កម្រិត​សំឡេង​ហៅ​ចូល​សម្រាប់​ជូន​ដំណឹង"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"ស្វែងរក"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"កំណត់​ការ​​ស្វែងរក"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"ការ​ភ្ជាប់​បណ្ដាញ​វ៉ាយហ្វាយ"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"បង្ហាញ​ពេល​ជាប់​សោ"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"មាតិកាជូនដំណឹងជាក់លាក់នឹងលាក់ពេលអេក្រង់ជាប់សោ"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"មាតិកាជូនដំណឹងទាំងអស់នឹងបង្ហាញពេលអេក្រង់ជាប់សោ"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"ការ​រំខាន​​មាន​កំណត់"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"កំណត់រចនាសម្ព័ន្ធការរំខានមានកំណត់"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"ការ​ផ្អាក​បាន​កំណត់"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"ការ​ជូនដំណឹង"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"ទូទៅ"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"សន្តិសុខ"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"កែប្រែ"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"កម្មវិធី"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"​កំណត់​ការ​ជូនដំណឹង"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"រៀប​ចំ​ស្លាក​អិនអេហ្វស៊ី​វ៉ាយហ្វាយ"</string>
+    <string name="write_tag" msgid="8571858602896222537">"សរសេរ"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"ប៉ះ​ស្លាក​ដើម្បី​សរសេរ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"ពាក្យ​សម្ងាត់​មិន​ត្រឹមត្រូវ ព្យាយាម​ម្ដងទៀត។"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"ជោគជ័យ!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"មិន​អាច​សរសេរ​ទិន្នន័យ​ទៅ​ស្លាក​អិនអេហ្វស៊ី។ បើ​នៅតែ​មាន​បញ្ហា​ សាកល្បង​​ស្លាក​ផ្សេង"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"ស្លាក​អិនអេហ្វ​ស៊ី​មិន​អាច​សរសេរ​បាន។ សូម​ប្រើ​ស្លាក​ផ្សេង។"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ko/strings.xml b/res/values-ko/strings.xml
index 9b622e6..1eda0cb 100644
--- a/res/values-ko/strings.xml
+++ b/res/values-ko/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"위치:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"인접한 CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"데이터 시도:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS 서비스:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"로밍:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">"<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>(으)로 보안"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"네트워크 비밀번호를 입력하세요."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"없음"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"위치 정확성 개선 등의 목적으로 <xliff:g id="APP_NAME">%1$s</xliff:g>에서 Wi-Fi가 꺼져 있을 때에도 네트워크 검색을 사용하도록 설정하려 합니다.\n\n검색하려는 모든 앱에 대해 이를 허용하시겠습니까?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"허용"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"무음 시 진동"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"기본 알림 소리"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"알림등 반복 표시"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"팝업 알림"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"중요한 알림이 팝업으로 표시됩니다."</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"벨소리"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"알림"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"전화 벨소리와 알림을 같은 볼륨으로"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"검색"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"검색 설정"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi Wi-Fi 네트워크 연결"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"잠금 화면에서 표시"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"민감한 알림 내용은 잠금 화면에 표시되지 않습니다."</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"모든 알림 내용이 잠금 화면에 표시됩니다."</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"제한적 중단"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"제한적 중단 설정"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"제한적 중단"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"알림"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"일반"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"보안"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"변경"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"앱"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"알림 설정"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Wi-Fi NFC 태그 설정"</string>
+    <string name="write_tag" msgid="8571858602896222537">"쓰기"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"태그를 탭하여 작성하세요..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"비밀번호가 잘못되었습니다. 다시 시도해 주세요."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"완료"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"NFC 태그에 데이터를 작성할 수 없습니다. 문제가 지속되는 경우 다른 태그를 사용해보세요."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC 태그를 작성할 수 없습니다. 다른 태그를 사용하세요."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-lo-rLA/strings.xml b/res/values-lo-rLA/strings.xml
index 9ef65ba..65d4293 100644
--- a/res/values-lo-rLA/strings.xml
+++ b/res/values-lo-rLA/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"ສະຖານທີ່:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID ໃກ້ຄຽງ:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"ຂໍ້ມູນ cell:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"ຄວາມ​ພະ​ຍາ​ຍາມ​ໃຊ້ຂໍ້​ມູນ:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"ບໍລິການ GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"ໂຣມມິງ​:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", ປ້ອງກັນດ້ວຍ <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"​ກະ​ລຸ​ນາ​ໃສ່​ລະ​ຫັດ​ຜ່ານ​ເຄືອ​ຂ່າຍ​ຂອງ​ທ່ານ."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"ບໍ່ໃຊ້"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"ເພື່ອປັບປຸງຄວາມຖືກຕ້ອງຂອງສະຖານທີ່ ແລະເພື່ອຈຸດປະສົງອື່ນໆ, <xliff:g id="APP_NAME">%1$s</xliff:g> ຕ້ອງການເປີດນຳໃຊ້ການສະແກນເຄືອຂ່າຍ ເຖິງແມ່ນວ່າ Wi-Fi ຈະປິດກໍຕາມ.\n\nອະນຸຍາດການດຳເນີນການນີ້ ໃຫ້ກັບທຸກແອັບຯທີ່ຕ້ອງການສະແກນບໍ່?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"ອະ​ນຸ​ຍາດ"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"ສັ່ນເຕືອນເມື່ອປິດສຽງ"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"ສຽງແຈ້ງເຕືອນເລີ່ມຕົ້ນ"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"ໄຟກະພິບແຈ້ງເຕືອນ"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"ລະ​ວັງ​ການ​ແຈ້ງ​ເຕືອນ"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"​ການ​ແຈ້ງ​ເຕືອນ​ສຳ​ຄັນ​ຈະ​ປາ​ກົດ​ຂຶ້ນ​ມາ"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"ຣິງໂທນ"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"ການແຈ້ງເຕືອນ"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"ໃຊ້ລະດັບສຽງໂທເຂົ້າເປັນສຽງແຈ້ງເຕືອນ"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"ຊອກຫາ"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"​ການ​ຕັ້ງ​ຄ່າ​ການ​ຊອກ​ຫາ"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi network connection"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"​ສະ​ແດງ​ເມື່ອ​ລັອກ"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"ການ​ແຈ້ງ​ເຕືອນເນື້ອ​ຫາ​ທີ່​ລະ​ອຽດ​ອ່ອນ​ຈະ​ຖືກ​ເຊື່ອງ​ໄວ້​ໃນໜ້າ​ຈໍ​ລັອກ"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"ການ​ແຈ້ງ​ເຕືອນເນື້ອ​ຫາ​ທຸກ​ຢ່າງ​ຈະ​ຖືກ​ສະ​ແດງ​ໄວ້​ໃນ​ໜ້າ​ຈໍ​ລັອກ"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"​ການ​ລົບ​ກວນ​ຈຳ​ກັດ"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"ຕັ້ງ​ຄ່າການ​ລົບ​ກວນ​ຈຳ​ກັດ"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"ການຂັດ​ຈັງ​ຫວະ​ທີ່​ຈຳ​ກັດ"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"ການແຈ້ງ​ເຕືອນ"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"ທົ່ວໄປ"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"ຄວາມ​ປອດ​ໄພ"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"ການປັບແຕ່ງຈຸກຈິກ"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"ແອັບຯ"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"​ການ​ຕັ້ງ​ຄ່າ​ການ​ແຈ້ງ​ເຕືອນ"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"ຕິດ​ຕັ້ງ​ແທັກ NFC ຂອງ WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"ຂຽນ"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"​ແ​ຕະ​ທີ່​ແທັກ​ເພື່ອ​ຂຽນ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"​ລະ​ຫັດ​ຜ່ານ​ບໍ່​ຖືກ​ຕ້ອງ​, ລອງ​ໃໝ່​ອີກ​ຄັ້ງ."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"ສຳເລັດແລ້ວ!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"​ບໍ່​ສາ​ມາດ​ຂຽນ​ຂໍ້​ມູນ​ໄປ​ຫາແທັກ NFC ໄດ້. ຫາກ​ບັນ​ຫາ​ນີ້​ຍັງ​ເກີດ​ຂຶ້ນ​ອີກ, ​ກະ​ລຸ​ນາ​ລອງ​ແທັກ​ອັນ​ອື່ນ​ເບິ່ງ"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"​ແທັກ NFC ແມ່ນ​ບໍ່​ສາ​ມາດ​ຂຽນ​ໄດ້​. ກະ​ລຸ​ນາ​ໃຊ້​ແທັກ​ອັນ​ອື່ນ​."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-lt/strings.xml b/res/values-lt/strings.xml
index 9dd493e..00e4e95 100644
--- a/res/values-lt/strings.xml
+++ b/res/values-lt/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Vieta:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Šalia esantis CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Mob. tel. informacija:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Duomenų bandymai:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS paslauga:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Tarptinklinis ryšys:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (galima WPS)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Saugoma „<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>“"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", saugoma „<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>“"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Įveskite tinklo slaptažodį."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nėra"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Siekiant tiksliau nustatyti vietą ir dėl kitų priežasčių, „<xliff:g id="APP_NAME">%1$s</xliff:g>“ prašo leidimo nuskaityti tinklus, net kai „Wi-Fi“ yra išjungtas.\n\nAr norite suteikti leidimą nuskaityti visoms to prašančioms programoms?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Leisti"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibruoti, kai veikia tyliuoju režimu"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Numatytasis pranešimo garsas"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulsuojanti įspėjimo šviesa"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Įspėjamieji pranešimai"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Svarbūs pranešimai iššoks"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Skambėjimo tonas"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Įspėjimas"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Įspėjimams naudoti gaunamų skambučių garsumą"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Paieška"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Paieškos nustatymai"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"„Wi-Fi“ tinklo ryšys"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Rodyti, kai užrakinta"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Delikat. pran. turinys bus paslėptas užrak. ekrane"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Visų pranešimų turinys bus rodomas užrak. ekrane"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ribotos pertraukos"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfigūruoti rib. pertraukas"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ribotos pertraukos"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Pranešimai"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Bendrieji"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sauga"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Modifikacijos"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Programos"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Įspėjimų nustatymai"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Nustatyti „Wi-Fi“ ALR žymą"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Rašyti"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Palieskite žymą, kad galėtumėte rašyti..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Netinkamas slaptažodis, bandykite dar kartą."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Pavyko."</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Nepavyko įrašyti duomenų į ALR žymą. Jei problema išlieka, išbandykite kitą žymą"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Negalima įrašyti į ALR žymą. Naudokite kitą žymą."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-lv/strings.xml b/res/values-lv/strings.xml
index 51052ff..7ed4749 100644
--- a/res/values-lv/strings.xml
+++ b/res/values-lv/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Atrašanās vieta:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Tuvējais CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Tālruņa atrašanās vietas informācija:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Datu mēģinājumi:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS pakalpojums:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Viesabonēšana:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS ir pieejams)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Nodrošināts ar <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", nodrošināts ar <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Ievadiet tīkla paroli."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nav"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Lai uzlabotu atrašanās vietu noteikšanas precizitāti, kā arī citas funkcijas, lietotnē <xliff:g id="APP_NAME">%1$s</xliff:g> tiek pieprasīts ieslēgt tīkla skenēšanu, pat ja Wi-Fi savienojums ir izslēgts.\n\nVai atļaut šo darbību visām lietotnēm, kurās tiek pieprasīta skenēšana?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Atļaut"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrē klusuma režīmā"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Noklusējuma paziņojuma skaņa"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulsa paziņojuma indikators"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Brīdinājuma paziņojumi"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Tiks attēloti uznirstoši nozīmīgi paziņojumi."</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Zvana signāls"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Paziņojums"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Paziņojumiem izmantot ienākošā zvana skaļumu"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Meklēt"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Meklēšanas iestatījumi"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi Wi-Fi tīkls savienojums"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Rādīt bloķēšanas ekrānā"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Bloķēšanas ekrānā netiks rādīts sensitīvs paziņojumu saturs"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Bloķēšanas ekrānā tiks rādīts viss paziņojumu saturs"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ierobežoti pārtraukumi"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfigurēt ierobežotus pārtraukumus"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ierobežoti pārtraukumi"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Paziņojumi"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Vispārīgi"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Drošība"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Uzlabojumi"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Lietotnes"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Paziņojumu iestatījumi"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Wi-Fi TDLS atzīmes iestatīšana"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Rakstīt"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Pieskarieties atzīmei, lai rakstītu."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Parole nav derīga, mēģiniet vēlreiz."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Gatavs!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Nevar ierakstīt datus TDLS atzīmē. Ja problēmu neizdodas novērst, izmēģiniet citu tagu."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"TDLS atzīmē nevar ierakstīt datus. Lūdzu, izmantojiet citu atzīmi."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-mn-rMN/strings.xml b/res/values-mn-rMN/strings.xml
index fd48c21..4ede4ab 100644
--- a/res/values-mn-rMN/strings.xml
+++ b/res/values-mn-rMN/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Байршил"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Хөрш CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Үүрийн мэдээлэл:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Дата оролдлого:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS үйлчилгээ:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Роуминг:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">"<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>-р хамгаалагдсан"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Сүлжээний нууц үгээ оруулна уу."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Байхгүй"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Байршлын нарийвчлалыг сайжруулах болон бусад зорилгоор <xliff:g id="APP_NAME">%1$s</xliff:g> нь Wi-Fi хаалттай байгаа хэдий ч сүлжээний сканийг идэвхжүүлэхийг хүсч байна.\n\nҮүнийг скан хийхийг хүсч байгаа бүх апп-д зөвшөөрөх үү?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Зөвшөөрөх"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Дуугүй үед чичрэх"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Мэдэгдлийн хонхны үндсэн ая"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Анивчих мэдэгдлийн гэрэл"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Мэдэгдлүүдийг харуулах"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Чухал мэдэгдлүүд попап хийх болно"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Хонхны ая"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Мэдэгдэл"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Ирж буй дуудлагын дууны хэмжээг мэдэгдэлд ашиглах"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Хайх"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Хайлтын тохиргоо"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi сүлжээний холболт"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Түгжээтэй үед харуулах"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Нууц мэдэгдлүүдийн агуулга түгжээтэй дэлгэц дээр гарахгүй"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Бүх мэдэгдлийн агуулга түгжээтэй дэлгэц дээр гарах болно"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Хязгаарлагдмал тасалдалтай"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Хязгаарлагдмал тасалдлуудыг тохируулах"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Хязгаарлагдмал тасалдалтай"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Мэдэгдэл"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Ерөнхий"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Аюулгүй байдал"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Твик"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Апп"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Мэдэгдлийн тохиргоо"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"WiFi NFC Тагийг тохируулах"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Бичих"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Бичихийн тулд тагь дээр дарах ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Буруу нууц үг, дахин оролдоно уу."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Амжилттай!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Датаг NFC тагь руу бичих боломжгүй. Асуудал хэвээр байвал өөр тагь ашиглаж үзнэ үү"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC тагь дээр бичих боломжгүй. Өөр тагь ашиглана уу."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ms-rMY/strings.xml b/res/values-ms-rMY/strings.xml
index f7ff16a..258c6c5 100644
--- a/res/values-ms-rMY/strings.xml
+++ b/res/values-ms-rMY/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Lokasi:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID berdekatan:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Info Sel:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Percubaan data:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Perkhidmatan GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Perayauan:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS tersedia)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Dijamin dengan <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", dijamin dengan <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Masukkan kata laluan rangkaian anda."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Tiada"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Untuk memperbaik ketepatan lokasi dan untuk tujuan lain, <xliff:g id="APP_NAME">%1$s</xliff:g> ingin menghidupkan imbasan rangkaian, walaupun semasa Wi-Fi dimatikan.\n\nBenarkan fungsi ini untuk semua apl yang ingin mengimbas?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Benarkan"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Getar apabila senyap"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Bunyi pemberitahuan lalai"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Lampu pemberitahuan denyutan"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Pemberitahuan Awal"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Pemberitahuan penting akan muncul"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Nada dering"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Pemberitahuan"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Gunakan kelantangan panggilan masuk untuk pemberitahuan"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Carian"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Tetapan carian"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi sambungan rangkaian"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Tunjukkan apabila dikunci"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Kandungan sensitif disembunyikan pada skrin kunci"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Semua pemberitahuan ditunjukkan pada skrin kunci"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Gangguan terhad"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfigurasikan gangguan terhad"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Gangguan Terhad"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Pemberitahuan"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Umum"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Keselamatan"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Pengubah"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apl"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Tetapan pemberitahuan"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Sediakan Teg NFC WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Tulis"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Ketik teg untuk menulis..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Kata laluan tidak sah, cuba lagi."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Berjaya!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Tidak dapat menulis data kepada teg NFC. Jika masalah berterusan, sila cuba teg yang berbeza."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Teg NFC tidak boleh ditulis. Sila gunakan teg yang berbeza."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-nb/strings.xml b/res/values-nb/strings.xml
index 309ecf8..85dc94d 100644
--- a/res/values-nb/strings.xml
+++ b/res/values-nb/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Posisjon:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Nabo-CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Celleinfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Dataforsøk:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-tjeneste:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS tilgjengelig)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Sikret med <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", sikret med <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Skriv inn nettverkspassordet ditt."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ingen"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> ønsker å bruke nettverksskanning, også når Wi-Fi er slått av, for bedre posisjonsnøyaktighet og andre formål. \n\nVil du tillate dette for alle apper som prøver å skanne?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Tillat"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrer ved stille modus"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Standard varsellyd"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"La varsellampen pulsere"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Viktige varsler"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Viktige varsler vises i forgrunnen"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringetone"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Varsel"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Bruk volum for innkommende anrop også for varslinger"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Søk"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Søkeinnstillinger"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi network connection"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Vis når enheten er låst"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Sensitivt varselinnhold vises ikke på låseskjermen"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Alt varselinnhold vises på låseskjermen"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Begrensede forstyrrelser"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfig. bregrensede forstyrrelser"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Begrensede forstyrrelser"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Varsler"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Generelt"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Sikkerhet"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Finjustering"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apper"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Varselinnstillinger"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Konfigurer NFC-brikke for Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Skriv"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Trykk på en brikke for å skrive"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Ugyldig passord. Prøv på nytt."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Fullført!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Kunne ikke skrive data til NFC-brikken. Prøv en annen brikke hvis problemet vedvarer"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC-brikken er skrivebeskyttet. Bruk en annen brikke."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 0dbf784..bd3a3d6 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Locatie:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Naburige CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Celinfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Gegevenspogingen:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-service:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS beschikbaar)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Beveiligd met <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", beveiligd met <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Geef uw netwerkwachtwoord op."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Geen"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Om de locatieprecisie te verbeteren en voor andere doeleinden, wil <xliff:g id="APP_NAME">%1$s</xliff:g> de netwerkscan inschakelen, zelfs als wifi is uitgeschakeld.\n\nDit toestaan voor alle apps die willen scannen?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Toestaan"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Trillen indien stil"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Standaardmeldingsgeluid"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Knipperen meldingslampje"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Aankondigingsmeldingen"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Belangrijke meldingen verschijnen als pop-up"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Beltoon"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Melding"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Volume van inkomende oproepen gebruiken voor meldingen"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Zoeken"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Zoekinstellingen"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi netwerk verbinding"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Weergeven bij vergrendeld"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Inhoud van gevoelige meldingen wordt verborgen op het vergrendelingsscherm"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Inhoud van alle meldingen wordt weergegeven op het vergrendelingsscherm"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Beperkte onderbrekingen"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Beperkte onderbrekingen configureren"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Beperkte onderbrekingen"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Meldingen"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Algemeen"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Beveiliging"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Aanpassingen"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Apps"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Instellingen voor meldingen"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"NFC-tag voor wifi instellen"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Schrijven"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tik op een tag om te schrijven..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Ongeldig wachtwoord. Probeer het opnieuw."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Voltooid"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Kan geen gegevens schrijven naar NFC-tag. Als het probleem blijft optreden, probeert u een andere tag."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC-tag is niet beschrijfbaar. Gebruik een andere tag."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 11b77e7..adf2052 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Lokalizacja:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Sąsiadujący CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Informacje:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Próby danych:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Usługa GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (protokół WPS dostępny)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Zabezpieczona za pomocą protokołu <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", zabezpieczona za pomocą protokołu <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Wpisz hasło do sieci."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Brak"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Aby poprawić dokładność lokalizacji (i w innych celach), <xliff:g id="APP_NAME">%1$s</xliff:g> chce włączyć skanowanie sieci – nawet gdy Wi-Fi jest wyłączone.\n\nZezwolić na to wszystkim aplikacjom, które chcą wykonywać skanowanie?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Zezwól"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Wibracje po wyciszeniu"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Domyślny dźwięk powiadomienia"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulsująca dioda"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Wyskakujące powiadomienia"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Ważne powiadomienia w wyskakujących okienkach"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Dzwonek"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Powiadomienie"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Użyj głośności połączeń przychodzących dla powiadomień"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Szukaj"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Ustawienia wyszukiwania"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi połączenie internet"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Pokaż przy blokadzie"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Poufne informacje będą ukryte na ekranie blokady"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Cała treść będzie widoczna na ekranie blokady"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Nieliczne powiadomienia"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Skonfiguruj nieliczne powiadomienia"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Nieliczne powiadomienia"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Powiadomienia"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Ogólne"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Zabezpieczenia"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Dodatkowe opcje"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplikacje"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Ustawienia powiadomień"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Skonfiguruj tag NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Zapisz"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Kliknij tag, by zapisać..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Nieprawidłowe hasło. Spróbuj ponownie."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Udało się!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Nie można zapisać danych na tagu NFC. Jeśli problem nie ustąpi, użyj innego tagu"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Tag NFC nie pozwala na zapis. Użyj innego tagu."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-pt-rPT/strings.xml b/res/values-pt-rPT/strings.xml
index d6b7d2c..9d0ac56 100644
--- a/res/values-pt-rPT/strings.xml
+++ b/res/values-pt-rPT/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Local:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID vizinho"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Tentativas de dados:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Serviço GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponível)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Protegido por <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", protegido por <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Introduza a sua palavra-passe de rede."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nenhuma"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Para melhorar a precisão da localização e para outros fins, <xliff:g id="APP_NAME">%1$s</xliff:g> pretende ativar a verificação de redes, mesmo quando o Wi-Fi está desativado.\n\nPermitir esta opção para todas as aplicações que pretenderem verificar?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permitir"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrar quando estiver em silêncio"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Som de notificação predefinido"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Sinalizar luz de notificação"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notificações prioritárias"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"As notificações importantes surgem num pop-up"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Toque"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notificação"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utilizar volume de chamadas recebidas para notificações"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Pesquisar"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Definições de pesquisa"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"ligação a rede Wi-Fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Mostrar quando bloqueado"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Os cont. de notif. confid. serão ocultados no ecrã de bloqueio"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Todos os cont. de notif. serão apres. no ecrã de bloqueio"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interrupções limitadas"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Config. interrupções limitadas"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interrupções limitadas"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notificações"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Geral"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Segurança"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Ajustes"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplicações"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Definições de notificações"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurar etiqueta NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Escrever"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Toque numa etiqueta para escrever..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Palavra-passe inválida, tente novamente."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Êxito!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Não é possível escrever dados na etiqueta NFC. Caso o problema persista, experimente uma etiqueta diferente"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"A etiqueta NFC não é gravável. Utilize uma etiqueta diferente."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-pt/strings.xml b/res/values-pt/strings.xml
index 849c08c..d534c60 100644
--- a/res/values-pt/strings.xml
+++ b/res/values-pt/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Localização:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID vizinho:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Tentativas de dados:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Serviço GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponível)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Protegido por <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", protegido por <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Insira a senha da rede."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Nenhuma"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Para aumentar a precisão da localização e outras finalidades, <xliff:g id="APP_NAME">%1$s</xliff:g> quer ativar a verificação de rede, mesmo que o Wi-Fi esteja desligado.\n\nPermitir isto para todos os aplicativos que quiserem verificar?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permitir"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrar no modo silencioso"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Som de notificação padrão"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulsar luz de notificação"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notificações antecipadas"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Notificações importantes em pop-up"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Toque"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notificação"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Usar volume de chamada recebida para notificações"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Pesquisar"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Configurações de pesquisa"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi rede conexão"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Mostrar ao bloquear"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Notificações confidenciais ocultas ao bloquear"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Mostrar todas as notificações na tela de bloqueio"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Interrupções limitadas"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Config. interrupções limitadas"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Interrupções limitadas"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notificações"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Gerais"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Segurança"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Ajustes"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplicativos"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Configurações de notificação"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurar marca NFC para Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Gravar"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Toque em uma marca para gravar…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Senha inválida, tente novamente."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Sucesso!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Não foi possível gravar os dados na marca NFC. Se o problema persistir, tente outra marca."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"A marca NFC não é gravável. Use outra marca."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-rm/strings.xml b/res/values-rm/strings.xml
index 7d2d964..a825f02 100644
--- a/res/values-rm/strings.xml
+++ b/res/values-rm/strings.xml
@@ -292,6 +292,8 @@
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID vischin:"</string>
     <!-- no translation found for radio_info_cellinfo_label (1300937728020622362) -->
     <skip />
+    <!-- no translation found for radio_info_dcrtinfo_label (6802395441317448068) -->
+    <skip />
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Emprovas datas:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Servetsch GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -952,6 +954,8 @@
     <skip />
     <!-- no translation found for wifi_secured_second_item (1326000076939056265) -->
     <skip />
+    <!-- no translation found for wifi_wps_nfc_enter_password (2860076442481710770) -->
+    <skip />
     <!-- no translation found for wifi_security_none (7985461072596594400) -->
     <skip />
     <!-- no translation found for wifi_scan_always_turnon_message (203123538572122989) -->
@@ -1075,9 +1079,7 @@
     <!-- no translation found for notification_sound_title (5137483249425507572) -->
     <skip />
     <string name="notification_pulse_title" msgid="1247988024534030629">"Glisch d\'avis pulsanta"</string>
-    <!-- no translation found for heads_up_enabled_title (2038264257807516472) -->
-    <skip />
-    <!-- no translation found for heads_up_enabled_summary (2746343598416626372) -->
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
     <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Tun da scalin"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Avis"</string>
@@ -3473,28 +3475,48 @@
     <skip />
     <!-- no translation found for keywords_wifi (8947676711698613374) -->
     <skip />
-    <!-- no translation found for lock_screen_notifications (6344441622889795466) -->
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
     <skip />
-    <!-- no translation found for lock_screen_notifications_summary_off (7971192950034108756) -->
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
     <skip />
-    <!-- no translation found for lock_screen_notifications_summary_on (6937529984940627146) -->
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
     <skip />
-    <!-- no translation found for title_zen_mode (7354258284572459398) -->
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
     <skip />
-    <!-- no translation found for configure_zen_mode_description (1234159893107156388) -->
-    <skip />
-    <!-- no translation found for zen_mode_settings_title (3709821127278518021) -->
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
     <skip />
     <!-- no translation found for notification_settings (8342078884790733726) -->
     <skip />
-    <!-- no translation found for notification_settings_general (6144810019102260602) -->
-    <skip />
-    <!-- no translation found for notification_settings_security (5096988798793488890) -->
-    <skip />
     <!-- no translation found for notification_settings_tweaks (659628355469765848) -->
     <skip />
-    <!-- no translation found for notification_settings_apps (4911871909798584040) -->
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
     <skip />
     <!-- no translation found for notification_app_settings_button (6685640230371477485) -->
     <skip />
+    <!-- no translation found for setup_wifi_nfc_tag (654375687941126332) -->
+    <skip />
+    <!-- no translation found for write_tag (8571858602896222537) -->
+    <skip />
+    <!-- no translation found for status_awaiting_tap (2130145523773160617) -->
+    <skip />
+    <!-- no translation found for status_invalid_password (2575271864572897406) -->
+    <skip />
+    <!-- no translation found for status_write_success (5228419086308251169) -->
+    <skip />
+    <!-- no translation found for status_failed_to_write (8072752734686294718) -->
+    <skip />
+    <!-- no translation found for status_tag_not_writable (2511611539977682175) -->
+    <skip />
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ro/strings.xml b/res/values-ro/strings.xml
index cd67139..916613a 100644
--- a/res/values-ro/strings.xml
+++ b/res/values-ro/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Locaţie:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID vecin:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Informaţii celulă:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Încercări de date:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Serviciu GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS disponibil)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Securizată cu <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", securizată cu <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Introduceți parola rețelei."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Niciuna"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Pentru a îmbunătăți precizia locației, precum și pentru alte scopuri, <xliff:g id="APP_NAME">%1$s</xliff:g> solicită permisiunea să activeze scanarea rețelelor, chiar și atunci când rețeaua Wi-Fi este dezactivată.\n\nPermiteți acest lucru pentru toate aplicațiile care solicită scanarea?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Permiteți"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrează la profilul Silenţios"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Sunet de notificare prestabilit"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Indicator luminos intermitent"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Notificări de avertizare"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Notif. importante afișate în ferestre pop-up"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ton de apel"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notificare"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Utilizaţi volumul apelurilor de intrare pentru notificări"</string>
@@ -2099,16 +2101,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Căutați"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Setări pentru căutare"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi conexiune la rețea"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Afișați pe ecran blocat"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Ascunde notificările confidențiale pe ecran blocat"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Afișează toate notificările pe ecran blocat"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Întreruperi limitate"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Config. întreruperi limitate"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Întreruperi limitate"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Notificări"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Generale"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Securitate"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplicații"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Setări pentru notificări"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Configurați eticheta NFC pentru WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Scrieți"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Atingeți o etichetă pentru a scrie..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Parolă incorectă, încercați din nou."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Ați reușit!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Imposibil de scris date în eticheta NFC. Dacă problema persistă, încercați altă etichetă."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Eticheta NFC nu poate fi scrisă. Utilizați altă etichetă."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-ru/strings.xml b/res/values-ru/strings.xml
index 6d5d591..b410cdb 100644
--- a/res/values-ru/strings.xml
+++ b/res/values-ru/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Местоположение:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Соседний CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Индекс сети:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Информация DcRt:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Попыток данных:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Услуга GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Роуминг:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", защита <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Введите пароль для подключения к сети."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Нет"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Чтобы определение местоположения и некоторые другие функции работали лучше, приложению \"<xliff:g id="APP_NAME">%1$s</xliff:g>\" необходимо выполнять поиск сетей, даже если модуль Wi-Fi отключен.\n\nРазрешить?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Разрешить"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Виброзвонок без звука"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Звук уведомлений по умолчанию"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Индикатор событий"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Показывать важные оповещения"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Важные оповещения будут показаны"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Мелодия"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Уведомление"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Использовать этот уровень громкости также для уведомлений"</string>
@@ -2100,16 +2102,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Поиск"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Поиск настроек"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi сетевое подключение"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"На заблокированном экране"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Не показывать конфиденциальные данные"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Показывать уведомления полностью"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ограниченное число прерываний"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Ограниченное число прерываний"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ограниченное число прерываний"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Уведомления"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Общие"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Безопасность"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Tweaks"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Приложения"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Настройки уведомлений"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Настройка NFC-метки для подключения к Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Записать"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Нажмите на метку, чтобы начать запись..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Неверный пароль. Повторите попытку."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Готово"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Не удалось записать данные. Если проблема не исчезнет, выберите другую NFC-метку."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Нельзя записать данные на эту NFC-метку. Выберите другую."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-sk/strings.xml b/res/values-sk/strings.xml
index c88f811..3ae03df 100644
--- a/res/values-sk/strings.xml
+++ b/res/values-sk/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Poloha:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Susedný identifikátor CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Informácie:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Pokusy údajov:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Služba GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS je k dispozícii)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Zabezpečenie: <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", zabezpečenie: <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Zadajte heslo siete."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Žiadne"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Aplikácia <xliff:g id="APP_NAME">%1$s</xliff:g> chce zapnúť vyhľadávanie sietí (z dôvodu dosiahnutia vyššej presnosti určovania polohy aj z iných dôvodov) a hľadať siete aj v prípade, že je vypnutý modul Wi-Fi.\n\nChcete túto možnosť povoliť všetkým aplikáciám, ktoré chcú vyhľadávať siete?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Povoliť"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrovať v tichom režime"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Predvolené zvukové upozornenie"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Blikať kontrolkou upozornenia"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Upozornenia Heads Up"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Dôlež. upozor. sa zobrazia v kontext. oknách"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Tón zvonenia"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Upozornenie"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Použije hlasitosť prichádzajúcich hovorov aj pre upozornenia"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Hľadať"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Nastavenia vyhľadávania"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi sieť pripojenie"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Zobraziť na uzamk. obraz."</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Citlivé upozornenia sú na uzamk. obrazovke skryté"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Na uzamk. obrazovke sa zobrazia všetky upozornenia"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Obmedzený počet vyrušení"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Nastavenie obmedz. vyrušovania"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Obmedzené prerušenia"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Upozornenia"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Všeobecné"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Zabezpečenie"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Vylepšenia"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplikácie"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Nastavenia upozornení"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Nastavenie značky NFC Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Zapísať"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Klepnutím na značku začnete zápis..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Neplatné heslo, skúste to znova."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Podarilo sa!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Zápis údajov na značku NFC sa nepodaril. Ak problém pretrváva, skúste inú značku."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Na značku NFC sa nedá zapisovať. Použitie inú značku."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-sl/strings.xml b/res/values-sl/strings.xml
index c30c623..a30f7a1 100644
--- a/res/values-sl/strings.xml
+++ b/res/values-sl/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Lokacija:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID v bližini:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Podatki o celici:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"Diagnostične informacije:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Podatkovni poskusi:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Storitev GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Gostovanje:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS je na voljo)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Zaščiteno z <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", zaščiteno z <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Vnesite geslo za omrežje."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Brez"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Za izboljšanje natančnosti lokacijskih podatkov in druge namene želi <xliff:g id="APP_NAME">%1$s</xliff:g> vklopiti iskanje omrežij, tudi ko je Wi-Fi izklopljen.\n\nŽelite to dovoliti vsem aplikacijam, ki želijo iskati omrežja?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Dovoli"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibriraj v tihem načinu"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Privzeti zvok obvestila"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Lučka za obvestila z utripanjem"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Opozorilna obvestila"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Pomembna obvestila bodo prikazana"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Zvonjenje"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Obvestilo"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Za obvestila uporabljaj glasnost dohodnih klicev"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Iskanje"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Nastavitve iskanja"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi omrežna povezava"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Pokaži, ko je zaklenjeno"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Občutljiva vsebina bo na zaklenjen. zaslonu skrita"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Vsa vsebina bo prikazana na zaklenjenem zaslonu"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Omejene prekinitve"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Nastavitev omejenih prekinitev"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Omejene prekinitve"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Obvestila"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Splošno"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Varnost"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Izboljšave"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Aplikacije"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Nastavitve obvestil"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Nastavitev brezžične oznake NFC"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Zapiši"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Dotaknite se oznake za zapisovanje ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Neveljavno geslo. Poskusite znova."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Uspešno."</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Na oznako NFC ni mogoče zapisati podatkov. Če težave ne odpravite, poskusite z drugo oznako."</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Na oznako NFC ni mogoče zapisovati. Uporabite drugo oznako."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-sr/strings.xml b/res/values-sr/strings.xml
index 7758927..4d034f6 100644
--- a/res/values-sr/strings.xml
+++ b/res/values-sr/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Локација:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Суседни ИД клијента:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Информације о ћелији:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Покушаји преноса података:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS услуга:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Роминг:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", обезбеђено помоћу <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Унесите лозинку за мрежу."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ништа"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Због побољшања прецизности локације и у друге сврхе, <xliff:g id="APP_NAME">%1$s</xliff:g> жели да укључи скенирање мреже чак и када је Wi-Fi искључен.\n\nЖелите ли да дозволите ово за све апликације које желе да скенирају?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Дозволи"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Вибрација у нечујном режиму"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Подразумевани звук обавештења"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Пулсирајуће обавештење"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Упозорења"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Важна обавештења ће искочити"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Звук звона"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Обавештење"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Користи јачину звука долазног позива за обавештења"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Претражите"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Подешавања претраге"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi мрежа веза"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Прикажи када је закључано"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Осетљив садржај обавештења ће бити сакривен на закључаном екрану"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Сав садржај обавештења ће бити приказан на закључаном екрану"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ограничен број прекида"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Конфигуришите ограничене прекиде"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ограничени прекиди"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Обавештења"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Опште"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Безбедност"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Фина подешавања"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Апликације"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Подешавања обавештења"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Подесите NFC ознаку за Wi-Fi упаривање"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Напиши"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Додирните ознаку да бисте писали..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Лозинка је неважећа. Покушајте поново."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Успели сте!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Није могуће писање података у NFC ознаку. Ако се проблем и даље јавља, покушајте са другом ознаком"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC ознака не подржава писање. Користите другу ознаку."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index 6df95fe..27bef46 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Plats:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Närliggande CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Cellinfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Dataförsök:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS-tjänst:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS tillgängligt)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Skyddad med <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", skyddad med <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Ange nätverkslösenordet."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Ingen"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> vill aktivera nätverkssökning även när Wi-Fi är avstängt för att kunna förbättra positionens exakthet och andra ändamål.\n\nVill du tillåta detta för alla appar som vill söka efter nätverk?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Tillåt"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Vibrera vid tyst"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Standardljud för meddelanden"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Blinkande ljusavisering"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Aviseringar"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Viktiga aviseringar visas"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringsignal"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Avisering"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Använd volymen för inkommande samtal vid avisering"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Sökning"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Sökinställningar"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi-nätverksanslutning"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Visa när enheten är låst"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Känsligt aviseringsinnehåll döljs på låsskärmen"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Allt aviseringsinnehåll visas på låsskärmen"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Begränsade avbrott"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Konfigurera begränsade avbrott"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Begränsade avbrott"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Aviseringar"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Allmänt"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Säkerhet"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Ändringar"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Appar"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Aviseringsinställningar"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Konfigurera en NFC-etikett för Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Skriv"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Tryck på en etikett för att skriva ..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Lösenordet är ogiltigt. Försök igen."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Klart!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Det går inte att skriva data till NFC-etiketter. Om problemet kvarstår testar du med en annan etikett"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Du kan inte skriva i NFC-etiketten. Använd en annan etikett."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-sw/strings.xml b/res/values-sw/strings.xml
index dd2cb47..ca14353 100644
--- a/res/values-sw/strings.xml
+++ b/res/values-sw/strings.xml
@@ -209,6 +209,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Mahali:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID ya ujirani:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Maelezo ya Simu:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Majaribio ya data:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Huduma ya GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"urandaji:"</string>
@@ -620,6 +621,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" WPS inapatikana"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Umelindwa kwa <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", umelindwa kwa <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Ingiza nenosiri la mtandao wako."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Hamna"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Ili kuboresha usahihi wa mahali na kwa madhumuni mengine, <xliff:g id="APP_NAME">%1$s</xliff:g> inataka kuwasha ukaguaji mitandao, hata wakati Wi-Fi imezimwa.\n\nJe, ungependa kuruhusu programu zote ambazo zingependa kukagua ziweza kufanya hivyo?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Ruhusu"</string>
@@ -691,8 +693,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Tetema wakati imenyamaza"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Sauti chaguo-msingi ya arifa"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Arifu ya mwangaza wa palsi"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Arifa za Tahadhari"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Arifa muhimu zitaibuka"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Mlio wa simu"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Arifa"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Tumia sauti ya simu inayoingia kwa arifa"</string>
@@ -2092,16 +2094,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Utafutaji"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Mipangilio ya utafutaji"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"muunganisho wa mtandao wa wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Onyesha wakati imefungwa"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Arifa za maudhui nyeti zitafichwa kwenye skrini iliyofungwa"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Arifa za maudhui yote zitaonyeshwa kwenye skrini iliyofungwa"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Ukatizwaji mdogo"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Sanidi ukatizwaji mdogo"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Ukatizwaji mdogo"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Arifa"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Jumla"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Usalama"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Marekebisho"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Programu"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Mipangilio ya arifa"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Sanidi tagi ya NFC ya WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Andika"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Gonga tagi ya NFC ili uandike..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Nenosiri si sahihi, jaribu tena."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Imefanikiwa!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Haiwezi kuandika data kwenye tagi ya NFC. Kama tatizo litaendelea, jaribu tagi tofauti"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Tagi ya NFC haiandikiki. Tafadhali tumia tagi tofauti."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-th/arrays.xml b/res/values-th/arrays.xml
index f749497..6b6f63d 100644
--- a/res/values-th/arrays.xml
+++ b/res/values-th/arrays.xml
@@ -457,9 +457,9 @@
   </string-array>
   <string-array name="vpn_types_long">
     <item msgid="2732002039459078847">"PPTP VPN"</item>
-    <item msgid="3799752201662127867">"L2TP/IPSec VPN พร้อมด้วยคีย์ที่แบ่งปันไว้ล่วงหน้า"</item>
+    <item msgid="3799752201662127867">"L2TP/IPSec VPN พร้อมด้วยคีย์ที่แชร์ไว้ล่วงหน้า"</item>
     <item msgid="4725504331295252103">"L2TP/IPSec VPN พร้อมด้วยใบรับรอง"</item>
-    <item msgid="7526551163264034377">"IPSec VPN พร้อมด้วยคีย์ที่แบ่งปันไว้ล่วงหน้าและการตรวจสอบสิทธิ์ Xauth"</item>
+    <item msgid="7526551163264034377">"IPSec VPN พร้อมด้วยคีย์ที่แชร์ไว้ล่วงหน้าและการตรวจสอบสิทธิ์ Xauth"</item>
     <item msgid="8064740940687465039">"IPSec VPN พร้อมด้วยใบรับรองและการตรวจสอบสิทธิ์ Xauth"</item>
     <item msgid="4946199982372391490">"IPSec VPN พร้อมด้วยใบรับรองและการตรวจสอบสิทธิ์แบบผสม"</item>
   </string-array>
diff --git a/res/values-th/strings.xml b/res/values-th/strings.xml
index 58fce57..0b9d786 100644
--- a/res/values-th/strings.xml
+++ b/res/values-th/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"ตำแหน่ง:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID ใกล้เคียง:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"ข้อมูลเซลล์:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"ความพยายามใช้ข้อมูล:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"บริการ GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"โรมมิ่ง:"</string>
@@ -487,14 +488,14 @@
     <string name="bluetooth_profile_opp" msgid="9168139293654233697">"การถ่ายโอนไฟล์"</string>
     <string name="bluetooth_profile_hid" msgid="3680729023366986480">"อุปกรณ์อินพุต"</string>
     <string name="bluetooth_profile_pan" msgid="3391606497945147673">"การเข้าถึงอินเทอร์เน็ต"</string>
-    <string name="bluetooth_profile_pan_nap" msgid="8429049285027482959">"การแบ่งปันการเชื่อมต่ออินเทอร์เน็ต"</string>
+    <string name="bluetooth_profile_pan_nap" msgid="8429049285027482959">"การแชร์การเชื่อมต่ออินเทอร์เน็ต"</string>
     <string name="bluetooth_profile_map" msgid="5465271250454324383">"การเข้าถึงข้อความ"</string>
     <string name="bluetooth_disconnect_a2dp_profile" msgid="3524648279150937177">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะถูกตัดการเชื่อมต่อจากเสียงของสื่อ"</string>
     <string name="bluetooth_disconnect_headset_profile" msgid="8635908811168780720">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะถูกตัดการเชื่อมต่อจากเสียงแฮนด์ฟรี"</string>
     <string name="bluetooth_disconnect_hid_profile" msgid="3282295189719352075">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะถูกตัดการเชื่อมต่อจากอุปกรณ์อินพุต"</string>
     <string name="bluetooth_disconnect_pan_user_profile" msgid="8037627994382458698">"การเข้าถึงอินเทอร์เน็ตผ่าน <xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะถูกยกเลิกการเชื่อมต่อ"</string>
-    <string name="bluetooth_disconnect_pan_nap_profile" product="tablet" msgid="5455448395850929200">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะยกเลิกการเชื่อมต่อจากการแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของแท็บเล็ตนี้"</string>
-    <string name="bluetooth_disconnect_pan_nap_profile" product="default" msgid="5266851881175033601">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะยกเลิกการเชื่อมต่อจากการแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้"</string>
+    <string name="bluetooth_disconnect_pan_nap_profile" product="tablet" msgid="5455448395850929200">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะยกเลิกการเชื่อมต่อจากการแชร์การเชื่อมต่ออินเทอร์เน็ตของแท็บเล็ตนี้"</string>
+    <string name="bluetooth_disconnect_pan_nap_profile" product="default" msgid="5266851881175033601">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะยกเลิกการเชื่อมต่อจากการแชร์การเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้"</string>
     <string name="bluetooth_device_advanced_title" msgid="6066342531927499308">"อุปกรณ์บลูทูธที่จับคู่"</string>
     <string name="bluetooth_device_advanced_online_mode_title" msgid="3689050071425683114">"เชื่อมต่อ"</string>
     <string name="bluetooth_device_advanced_online_mode_summary" msgid="1204424107263248336">"เชื่อมต่อกับอุปกรณ์บลูทูธ"</string>
@@ -508,7 +509,7 @@
     <string name="bluetooth_opp_profile_summary_not_connected" msgid="1267091356089086285">"ไม่ได้เชื่อมต่อกับเซิร์ฟเวอร์สำหรับโอนไฟล์"</string>
     <string name="bluetooth_hid_profile_summary_connected" msgid="3381760054215168689">"เชื่อมต่อกับอุปกรณ์อินพุตแล้ว"</string>
     <string name="bluetooth_pan_user_profile_summary_connected" msgid="4602294638909590612">"เชื่อมต่อกับอุปกรณ์สำหรับการเข้าถึงอินเทอร์เน็ต"</string>
-    <string name="bluetooth_pan_nap_profile_summary_connected" msgid="1561383706411975199">"กำลังแบ่งปันอินเทอร์เน็ตกับอุปกรณ์"</string>
+    <string name="bluetooth_pan_nap_profile_summary_connected" msgid="1561383706411975199">"กำลังแชร์อินเทอร์เน็ตกับอุปกรณ์"</string>
     <string name="bluetooth_a2dp_profile_summary_use_for" msgid="4630849022250168427">"ใช้สำหรับระบบเสียงของสื่อ"</string>
     <string name="bluetooth_headset_profile_summary_use_for" msgid="8705753622443862627">"ใช้สำหรับระบบเสียงของโทรศัพท์"</string>
     <string name="bluetooth_opp_profile_summary_use_for" msgid="1255674547144769756">"ใช้สำหรับการโอนไฟล์"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">" ป้องกันด้วย <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"ป้อนรหัสผ่านเครือข่ายของคุณ"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"ไม่มี"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"เพื่อปรับปรุงความแม่นยำของตำแหน่ง และเพื่อวัตถุประสงค์อื่น ๆ <xliff:g id="APP_NAME">%1$s</xliff:g> ต้องการเปิดการสแกนเครือข่าย แม้ในขณะที่ไม่มี WiFi \n \n อนุญาตให้ดำเนินการนี้สำหรับแอปทั้งหมดที่ต้องการสแกนหรือไม่"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"อนุญาต"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"สั่นเตือนเมื่อปิดเสียง"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"เสียงแจ้งเตือนเริ่มต้น"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"ไฟแจ้งเตือนพัลซ์"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"การแจ้งเตือนล่วงหน้า"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"การแจ้งเตือนสำคัญจะแสดงเป็นป๊อปอัป"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"เสียงเรียกเข้า"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"การแจ้งเตือน"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"ใช้ระดับเสียงของสายเรียกเข้าเพื่อแจ้งเตือน"</string>
@@ -983,14 +985,14 @@
     <string name="usb_tethering_unavailable_subtext" msgid="1044622421184007254">"ไม่ได้เชื่อมต่อ USB"</string>
     <string name="usb_tethering_errored_subtext" msgid="1377574819427841992">"ข้อผิดพลาดในการปล่อยสัญญาณของ USB"</string>
     <string name="bluetooth_tether_checkbox_text" msgid="2379175828878753652">"ปล่อยสัญญาณบลูทูธ"</string>
-    <string name="bluetooth_tethering_available_subtext" product="tablet" msgid="8811610320942954709">"กำลังแบ่งปันอินเทอร์เน็ตของแท็บเล็ตนี้"</string>
-    <string name="bluetooth_tethering_available_subtext" product="default" msgid="4229220575771946723">"กำลังแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้"</string>
-    <string name="bluetooth_tethering_device_connected_subtext" product="tablet" msgid="2730938191906597896">"กำลังแบ่งปันอินเทอร์เน็ตของแท็บเล็ตนี้กับอุปกรณ์ 1 เครื่อง"</string>
-    <string name="bluetooth_tethering_device_connected_subtext" product="default" msgid="1666736165420290466">"กำลังแบ่งปันอินเทอร์เน็ตของโทรศัพท์นี้กับอุปกรณ์ 1 เครื่อง"</string>
-    <string name="bluetooth_tethering_devices_connected_subtext" product="tablet" msgid="1180765608259580143">"กำลังแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของแท็บเล็ตนี้กับอุปกรณ์ <xliff:g id="CONNECTEDDEVICECOUNT">%1$d</xliff:g> เครื่อง"</string>
-    <string name="bluetooth_tethering_devices_connected_subtext" product="default" msgid="8248942539362173005">"กำลังแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้กับอุปกรณ์ <xliff:g id="CONNECTEDDEVICECOUNT">%1$d</xliff:g> เครื่อง"</string>
-    <string name="bluetooth_tethering_off_subtext" product="tablet" msgid="2093881379028235555">"ไม่แบ่งปันการเชื่อมต่ออินเทอร์เน็ตของแท็บเล็ตนี้"</string>
-    <string name="bluetooth_tethering_off_subtext" product="default" msgid="706860924389041342">"ไม่แบ่งปันการเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้"</string>
+    <string name="bluetooth_tethering_available_subtext" product="tablet" msgid="8811610320942954709">"กำลังแชร์อินเทอร์เน็ตของแท็บเล็ตนี้"</string>
+    <string name="bluetooth_tethering_available_subtext" product="default" msgid="4229220575771946723">"กำลังแชร์การเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้"</string>
+    <string name="bluetooth_tethering_device_connected_subtext" product="tablet" msgid="2730938191906597896">"กำลังแชร์อินเทอร์เน็ตของแท็บเล็ตนี้กับอุปกรณ์ 1 เครื่อง"</string>
+    <string name="bluetooth_tethering_device_connected_subtext" product="default" msgid="1666736165420290466">"กำลังแชร์อินเทอร์เน็ตของโทรศัพท์นี้กับอุปกรณ์ 1 เครื่อง"</string>
+    <string name="bluetooth_tethering_devices_connected_subtext" product="tablet" msgid="1180765608259580143">"กำลังแชร์การเชื่อมต่ออินเทอร์เน็ตของแท็บเล็ตนี้กับอุปกรณ์ <xliff:g id="CONNECTEDDEVICECOUNT">%1$d</xliff:g> เครื่อง"</string>
+    <string name="bluetooth_tethering_devices_connected_subtext" product="default" msgid="8248942539362173005">"กำลังแชร์การเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้กับอุปกรณ์ <xliff:g id="CONNECTEDDEVICECOUNT">%1$d</xliff:g> เครื่อง"</string>
+    <string name="bluetooth_tethering_off_subtext" product="tablet" msgid="2093881379028235555">"ไม่แชร์การเชื่อมต่ออินเทอร์เน็ตของแท็บเล็ตนี้"</string>
+    <string name="bluetooth_tethering_off_subtext" product="default" msgid="706860924389041342">"ไม่แชร์การเชื่อมต่ออินเทอร์เน็ตของโทรศัพท์นี้"</string>
     <string name="bluetooth_tethering_errored_subtext" msgid="4926566308991142264">"ไม่สามารถเชื่อมต่อ"</string>
     <string name="bluetooth_tethering_overflow_error" msgid="6285122039489881969">"ไม่สามารถปล่อยการเชื่อมต่อมากกว่า <xliff:g id="MAXCONNECTION">%1$d</xliff:g> อุปกรณ์"</string>
     <string name="bluetooth_untether_blank" msgid="2871192409329334813">"<xliff:g id="DEVICE_NAME">%1$s</xliff:g> จะถูกยกเลิกการปล่อยสัญญาณ"</string>
@@ -1333,8 +1335,8 @@
     <string name="enable_adb" msgid="7982306934419797485">"การแก้ไขข้อบกพร่อง USB"</string>
     <string name="enable_adb_summary" msgid="4881186971746056635">"โหมดแก้ไขข้อบกพร่องเมื่อเชื่อมต่อ USB"</string>
     <string name="clear_adb_keys" msgid="4038889221503122743">"ยกเลิกการให้สิทธิ์การแก้ปัญหา USB"</string>
-    <string name="bugreport_in_power" msgid="4548816486587403971">"รายงานบั๊กเกี่ยวกับเมนูเปิดปิด"</string>
-    <string name="bugreport_in_power_summary" msgid="5764234382355067053">"เพิ่มตัวเลือกในเมนูเปิดปิดสำหรับการใช้รายงานบั๊ก"</string>
+    <string name="bugreport_in_power" msgid="4548816486587403971">"รายงานข้อบกพร่องเกี่ยวกับเมนูเปิดปิด"</string>
+    <string name="bugreport_in_power_summary" msgid="5764234382355067053">"เพิ่มตัวเลือกในเมนูเปิดปิดสำหรับการใช้รายงานข้อบกพร่อง"</string>
     <string name="keep_screen_on" msgid="1146389631208760344">"เปิดหน้าจอค้าง"</string>
     <string name="keep_screen_on_summary" msgid="2173114350754293009">"หน้าจอจะไม่เข้าสู่โหมดสลีปขณะชาร์จ"</string>
     <string name="bt_hci_snoop_log" msgid="3340699311158865670">"เปิดใช้งานบันทึกสอดแนมบลูทูธ HCI"</string>
@@ -1940,7 +1942,7 @@
     <string name="vpn_mppe" msgid="6639001940500288972">"การเข้ารหัส PPP (MPPE)"</string>
     <string name="vpn_l2tp_secret" msgid="529359749677142076">"ข้อมูลลับ L2TP"</string>
     <string name="vpn_ipsec_identifier" msgid="4098175859460006296">"ตัวระบุ IPSec"</string>
-    <string name="vpn_ipsec_secret" msgid="4526453255704888704">"คีย์ IPSec ที่แบ่งปันไว้ล่วงหน้า"</string>
+    <string name="vpn_ipsec_secret" msgid="4526453255704888704">"คีย์ IPSec ที่แชร์ไว้ล่วงหน้า"</string>
     <string name="vpn_ipsec_user_cert" msgid="6880651510020187230">"ใบรับรองผู้ใช้ IPSec"</string>
     <string name="vpn_ipsec_ca_cert" msgid="91338213449148229">"ใบรับรอง IPSec CA"</string>
     <string name="vpn_ipsec_server_cert" msgid="6599276718456935010">"ใบรับรองเซิร์ฟเวอร์ IPSec"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"ค้นหา"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"การตั้งค่าการค้นหา"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"การเชื่อมต่อเครือข่าย wifi wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"แสดงเมื่อล็อก"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"เนื้อหาการแจ้งเตือนที่ละเอียดอ่อนจะถูกซ่อนไม่ให้แสดงบนหน้าจอล็อก"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"เนื้อหาการแจ้งเตือนทั้งหมดจะแสดงบนหน้าจอล็อก"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"การรบกวนที่จำกัด"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"กำหนดค่าการรบกวนที่จำกัด"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"การรบกวนที่จำกัด"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"การแจ้งเตือน"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"ทั่วไป"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"ความปลอดภัย"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"ปรับแต่ง"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"แอป"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"การตั้งค่าการแจ้งเตือน"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"ตั้งค่าแท็ก WiFi NFC"</string>
+    <string name="write_tag" msgid="8571858602896222537">"เขียน"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"แตะแท็กเพื่อเขียน..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"รหัสผ่านไม่ถูกต้อง โปรดลองอีกครั้ง"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"สำเร็จ!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"ไม่สามารถเขียนข้อมูลลงแท็ก NFC ได้ หากยังคงมีปัญหา โปรดลองใช้แท็กอื่น"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"แท็ก NFC ไม่สามารถเขียนได้ โปรดใช้แท็กอื่น"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-tl/strings.xml b/res/values-tl/strings.xml
index 5847902..b105a60 100644
--- a/res/values-tl/strings.xml
+++ b/res/values-tl/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Lokasyon:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Katabing CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Mga pagtatangka ng data:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Serbisyong GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Roaming:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (Available ang WPS)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Naka-secure gamit ang <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", naka-secure gamit ang <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Ilagay ang iyong password sa network."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Wala"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Upang mapahusay ang katumpakan ng lokasyon at para sa iba pang mga layunin, gustong i-on ng <xliff:g id="APP_NAME">%1$s</xliff:g> ang pag-scan ng network, kahit na naka-off ang Wi-Fi.\n\nPayagan ito para sa lahat ng apps na gustong mag-scan?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Payagan"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"I-vibrate kapag naka-silent"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Default na tunog ng notification"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Pulse na ilaw ng notification"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Mga Heads Up na Notification"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Magpa-pop up ang mahahalagang notification"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Ringtone"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Notification"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Gumamit ng lakas ng tunog ng papasok na tawag para sa mga notification"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Maghanap"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Mga setting ng paghahanap"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi network connection"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Ipakita kapag naka-lock"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Itatago ang mga sensitibong nilalaman ng notification sa lock screen"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Ipapakita ang lahat ng nilalaman ng notification sa lock screen"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Mga limitadong pagkaantala"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"I-configure ang mga limitadong pagkaantala"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Mga Limitadong Pagkagambala"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Mga Notification"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Pangkalahatan"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Seguridad"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Mga Pagbabago"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Mga App"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Mga setting ng notification"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"I-set up ang Tag ng NFC ng WiFi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Magsulat"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Mag-tap ng tag upang magsulat..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Di-wastong password, subukang muli."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Tagumpay!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Hindi makapagsulat ng data sa tag ng NFC. Kung magpapatuloy ang problema, sumubok ng ibang tag"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Hindi nasusulatan ang tag ng NFC. Mangyaring gumamit ng ibang tag."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-tr/strings.xml b/res/values-tr/strings.xml
index 4a1daf7..34b4bc6 100644
--- a/res/values-tr/strings.xml
+++ b/res/values-tr/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Konum:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Komşu CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Hücre Bilgileri:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Veri giriş denemeleri:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS hizmeti:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Dolaşım:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (WPS kullanılabilir)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Güvenliği <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> ile sağlanıyor"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", güvenliği <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> ile sağlanıyor"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Ağ şifrenizi girin."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Yok"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Konum bilgisinin doğruluğunu artırmak ve diğer amaçlar için, <xliff:g id="APP_NAME">%1$s</xliff:g> Kablosuz bağlantı kapalı olduğunda bile ağ tarama işlevini açmak istiyor.\n\nTarama yapmak isteyen tüm uygulamaların bu işlevi kullanmalarına izin veriyor musunuz?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"İzin ver"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Sessizken titret"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Varsayılan bildirim sesi"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Bildirim ışığını yakıp söndür"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Uyarı Bildirimleri"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Önemli bildirimler görüntülenecek"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Zil sesi"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Bildirim"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Bildirimlerde gelen çağrı ses düzeyini kullan"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Arama yapın"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Arama ayarları"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi kablosuz ağ bağlantısı"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Kilitlendiğinde göster"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Hassas bildirim içeriği kilit ekranında gizlenecek"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Tüm bildirim içerikleri kilit ekranında gizlenecek"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Sınırlı kesilmeler"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Sınırlı kesilmeleri yapılandır"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Sınırlı Kesilmeler"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Bildirimler"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Genel"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Güvenlik"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"İnce ayarlar"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Uygulamalar"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Bildirim ayarları"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Kablosuz NFC Etiketi Oluştur"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Yaz"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Yazmak için bir etikete hafifçe vurun..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Geçersiz şifre. Tekrar deneyin."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Başarıyla yazıldı!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"NFC etiketine veri yazılamıyor. Sorun devam ederse başka bir etiket deneyin"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"NFC etiketine yazılamıyor. Lütfen farklı bir etiket kullanın."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index baf5f1e..33968cd 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Місцезнах.:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"Сусідній CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Інформація про телефон:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Спроб даних:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Служба GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Роумінг:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", захищено: <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Введіть пароль своєї мережі."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Немає"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Щоб покращити точність даних про місцезнаходження, а також для інших цілей, програма <xliff:g id="APP_NAME">%1$s</xliff:g> хоче вмикати сканування мережі, навіть коли Wi-Fi вимкнено.\n\nДозволити це для всіх програм, які потребують сканування?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Дозволити"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Вібр. в беззвуч. реж."</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Звук сповіщення за умовчанням"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Блим. світл. сигн. сповіщ."</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Важливі сповіщення"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Важливі сповіщення з’являтимуться на екрані"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Мелодія"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Сповіщення"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Викор. гучність вхідних дзвінків для сповіщень"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Пошук"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Налаштуваня пошуку"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi network connection"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Показ під час блокування"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Конфіденційний вміст не видно на екрані блокування"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Весь вміст сповіщень видно на екрані блокування"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Обмежені перешкоди"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Налаштувати обмежені перешкоди"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Обмежені перешкоди"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Сповіщення"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Загальні"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Безпека"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Налаштування"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Додатки"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Налаштування сповіщень"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Налаштувати NFC-тег Wi-Fi"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Записати"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Торкніться тегу, у який потрібно записати дані…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Недійсний пароль. Повторіть спробу."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Готово"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Не вдалося записати дані в NFC-тег. Якщо проблема не зникне, виберіть інший тег"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"У цей NFC-тег не можна записувати дані. Виберіть інший."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-vi/strings.xml b/res/values-vi/strings.xml
index ae27a89..94ced50 100644
--- a/res/values-vi/strings.xml
+++ b/res/values-vi/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Vị trí:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"CID lân cận:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"CellInfo:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Nỗ lực dữ liệu:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Dịch vụ GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Chuyển vùng:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (Có WPS)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Được bảo mật bằng <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", được bảo mật bằng <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Nhập mật khẩu mạng của bạn."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Không"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Để nâng cao độ chính xác vị trí và phục vụ các mục đích khác, <xliff:g id="APP_NAME">%1$s</xliff:g> muốn bật tính năng quét mạng ngay cả khi Wi-Fi đang tắt.\n\nCho phép cài đặt này đối với tất cả ứng dụng muốn quét?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Cho phép"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Rung khi im lặng"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Âm thanh thông báo mặc định"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Đèn thông báo dạng xung"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Thông báo lưu ý"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Thông báo quan trọng sẽ bật lên"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Nhạc chuông"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Thông báo"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Sử dụng âm lượng cuộc gọi đến cho thông báo"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Tìm kiếm"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Cài đặt tìm kiếm"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi kết nối mạng"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Hiển thị khi bị khóa"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Nội dung thông báo nhạy cảm sẽ bị ẩn trên màn hình khóa"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Tất cả nội dung thông báo sẽ được hiển thị trên màn hình khóa"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Gián đoạn hạn chế"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Định cấu hình các gián đoạn hạn chế"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Gián đoạn hạn chế"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Thông báo"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Chung"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Bảo mật"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Chỉnh sửa"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Ứng dụng"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Cài đặt thông báo"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Thiết lập thẻ WiFi NFC"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Ghi"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Nhấn vào một thẻ để ghi..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Mật khẩu không hợp lệ, hãy thử lại."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Thành công!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Không thể ghi dữ liệu vào thẻ NFC. Nếu sự cố tiếp diễn, hãy thử một thẻ khác"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Thẻ NFC không thể ghi được. Vui lòng sử dụng một thẻ khác."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml
index 800a33c..d3690b6 100644
--- a/res/values-zh-rCN/strings.xml
+++ b/res/values-zh-rCN/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"地点:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"相邻的 CID:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"小区信息:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"数据尝试次数:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS 服务:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"漫游:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">",通过 <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> 进行保护"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"请输入您的网络密码。"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"无"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"为了提高位置信息精确度以及其他目的,“<xliff:g id="APP_NAME">%1$s</xliff:g>”请求启用网络扫描功能(在关闭了 WLAN  时也可进行扫描)。\n\n是否对所有需要进行扫描的应用批准这项请求?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"允许"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"静音时振动"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"默认通知提示音"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"收到通知时指示灯闪烁"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"弹出式通知"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"重要通知会自动弹出"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"铃声"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"通知"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"将来电音量用作通知音量"</string>
@@ -2098,16 +2100,38 @@
     <string name="search_menu" msgid="7053532283559077164">"搜索"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"搜索设置"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"WLAN网络连接"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"锁定时显示"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"敏感的通知内容将会在锁定屏幕上隐藏"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"所有通知内容均将在锁定屏幕上显示"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"有限打扰"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"配置有限打扰"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"有限打扰"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"通知"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"常规"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"安全"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"调整"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"应用"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"通知设置"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"设置WLAN NFC标记"</string>
+    <string name="write_tag" msgid="8571858602896222537">"写入"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"点按标记即可写入…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"密码无效,请重试。"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"成功!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"无法将数据写入NFC标记。如果该问题一直存在,请尝试使用其他标记"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"无法将数据写入NFC标记,请使用其他标记。"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-zh-rHK/strings.xml b/res/values-zh-rHK/strings.xml
index 6a53c38..a2f905a 100644
--- a/res/values-zh-rHK/strings.xml
+++ b/res/values-zh-rHK/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"位置:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"相鄰的客戶編號:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"手機資訊:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"資料嘗試次數:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS 服務:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"漫遊:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">",以 <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> 保護連線安全性"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"輸入您的網絡密碼。"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"無"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"「<xliff:g id="APP_NAME">%1$s</xliff:g>」要求開啟網絡掃瞄功能 (即使 Wi-Fi 已關閉),以提升定位精確度及用於其他用途。\n\n您要允許所有需要掃瞄的應用程式這項要求嗎?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"允許"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"靜音時震動"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"預設通知音效"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"閃爍燈光通知"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"帶頭通知"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"彈出重要通知"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"鈴聲"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"通知"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"通知音量與來電音量相同"</string>
@@ -2102,16 +2104,38 @@
     <string name="search_menu" msgid="7053532283559077164">"搜尋"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"搜尋設定"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"WiFi Wi-Fi 網絡連線"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"上鎖時顯示"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"上鎖畫面中會隱藏敏感通知內容"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"上鎖畫面會顯示所有通知內容"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"有限度干擾"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"設定限制干擾"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"有限度干擾"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"通知"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"一般"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"安全性"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"調整"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"應用程式"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"通知設定"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"設定 Wi-Fi NFC 標籤"</string>
+    <string name="write_tag" msgid="8571858602896222537">"寫入"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"輕按標籤即可寫入…"</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"密碼無效,請再試一次。"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"大功告成!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"無法將資料寫入 NFC 標籤。如果問題仍然持續,請嘗試使用其他標籤"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"無法寫入 NFC 標籤,請使用其他標籤。"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-zh-rTW/strings.xml b/res/values-zh-rTW/strings.xml
index 73b18a7..9459d68 100644
--- a/res/values-zh-rTW/strings.xml
+++ b/res/values-zh-rTW/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"位置:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"相鄰的客戶編號:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"儲存格資訊:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"嘗試資料:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"GPRS 服務:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"漫遊:"</string>
@@ -628,6 +629,7 @@
     <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>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">",透過 <xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g> 加密保護"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"輸入您的網路密碼。"</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"無"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"<xliff:g id="APP_NAME">%1$s</xliff:g> 要求開啟網路掃描功能 (即使 Wi-Fi 已關閉),藉此提升定位精確度及用於其他用途。\n\n您要對所有需要執行掃描的應用程式允許這項要求嗎?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"允許"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"靜音時震動"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"預設通知音效"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"閃爍燈光通知"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"提醒通知"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"彈出顯示重要通知"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"鈴聲"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"通知"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"通知音量與來電音量相同"</string>
@@ -2102,16 +2104,38 @@
     <string name="search_menu" msgid="7053532283559077164">"搜尋"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"搜尋設定"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"wifi wi-fi 網路連線"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"鎖定時顯示"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"鎖定畫面中不會顯示機密通知內容"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"鎖定畫面會顯示所有通知內容"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"限制干擾"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"設定限制干擾"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"限制干擾"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"通知"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"一般設定"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"安全性"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"調整"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"應用程式"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"通知設定"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"設定 WiFi NFC 標記"</string>
+    <string name="write_tag" msgid="8571858602896222537">"寫入"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"輕按標記即可寫入..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"密碼無效,請再試一次。"</string>
+    <string name="status_write_success" msgid="5228419086308251169">"成功!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"無法將資料寫入 NFC 標記。如果問題持續發生,請嘗試使用其他標記"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"無法寫入 NFC 標記,請使用其他標記。"</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index e834c7e..9ce6626 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -207,6 +207,7 @@
     <string name="radio_info_signal_location_label" msgid="16475158265551708">"Indawo:"</string>
     <string name="radio_info_neighboring_location_label" msgid="2385625674055934880">"I-CID Yokwakhelana:"</string>
     <string name="radio_info_cellinfo_label" msgid="1300937728020622362">"Ulwazi leseli:"</string>
+    <string name="radio_info_dcrtinfo_label" msgid="6802395441317448068">"I-DcRtInfo:"</string>
     <string name="radio_info_data_attempts_label" msgid="1731106244577323381">"Imizamo yedatha:"</string>
     <string name="radio_info_gprs_service_label" msgid="2331818110375395364">"Iseva ye-GPRS:"</string>
     <string name="radio_info_roaming_label" msgid="6141505430275138647">"Ukuzulazula:"</string>
@@ -628,6 +629,7 @@
     <string name="wifi_wps_available_second_item" msgid="8427520131718215301">" (i-WPS iyatholakala)"</string>
     <string name="wifi_secured_first_item" msgid="4072076186051083451">"Ivikelwe nge-<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
     <string name="wifi_secured_second_item" msgid="1326000076939056265">", ivikelwe nge-<xliff:g id="WIFI_SECURITY_SHORT">%1$s</xliff:g>"</string>
+    <string name="wifi_wps_nfc_enter_password" msgid="2860076442481710770">"Faka iphasiwedi yakho yenethiwekhi."</string>
     <string name="wifi_security_none" msgid="7985461072596594400">"Lutho"</string>
     <string name="wifi_scan_always_turnon_message" msgid="203123538572122989">"Ukuze kuthuthukiswe ukufaneleka kwendawo nezinye izinjongo, i-<xliff:g id="APP_NAME">%1$s</xliff:g> ifuna ukuvula ukuskena kwenethiwekhi, noma ngabe i-Wi-Fi ivaliwe.\n\nVumela lokhu ngazo zonke izinhlelo zokusebenza ezifuna ukuskena?"</string>
     <string name="wifi_scan_always_confirm_allow" msgid="5355973075896817232">"Vumela"</string>
@@ -699,8 +701,8 @@
     <string name="vibrate_in_silent_title" msgid="3897968069156767036">"Idlidliza uma ithulile"</string>
     <string name="notification_sound_title" msgid="5137483249425507572">"Umsindo wokwazisa ozenzakalelayo"</string>
     <string name="notification_pulse_title" msgid="1247988024534030629">"Ukukhanya kwesaziso sephalsi"</string>
-    <string name="heads_up_enabled_title" msgid="2038264257807516472">"Izaziso ezikwazisa ngokusha"</string>
-    <string name="heads_up_enabled_summary" msgid="2746343598416626372">"Izaziso ezibalulekile zizovela"</string>
+    <!-- no translation found for heads_up_enabled_title (1031078221910921622) -->
+    <skip />
     <string name="incoming_call_volume_title" msgid="8073714801365904099">"Iringithoni"</string>
     <string name="notification_volume_title" msgid="2012640760341080408">"Isaziso"</string>
     <string name="checkbox_notification_same_as_incoming_call" msgid="1073644356290338921">"Sebenzisa ivolumu yocingo olungenayo yezaziso"</string>
@@ -2105,16 +2107,38 @@
     <string name="search_menu" msgid="7053532283559077164">"Sesha"</string>
     <string name="query_hint_text" msgid="3350700807437473939">"Izilungiselelo zokusesha"</string>
     <string name="keywords_wifi" msgid="8947676711698613374">"ukuxhumeka kwenethiwekhi ye-wi-fi"</string>
-    <string name="lock_screen_notifications" msgid="6344441622889795466">"Bonisa uma ivaliwe"</string>
-    <string name="lock_screen_notifications_summary_off" msgid="7971192950034108756">"Okuqukethwe kwezaziso ezizwelayo kuzofihlwa esikrinini sokukhiya"</string>
-    <string name="lock_screen_notifications_summary_on" msgid="6937529984940627146">"Konke okuqukethwe kwesaziso kuzoboniswa esikrinini sokukhiya"</string>
-    <string name="title_zen_mode" msgid="7354258284572459398">"Iziphazamiso ezinomkhawulo"</string>
-    <string name="configure_zen_mode_description" msgid="1234159893107156388">"Lungiselela iziphazamiso ezikhawulelwe"</string>
-    <string name="zen_mode_settings_title" msgid="3709821127278518021">"Iziphazamiso ezinomkhawulo"</string>
+    <!-- no translation found for lock_screen_notifications (1785930071975221150) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_off (2477642360263652408) -->
+    <skip />
+    <!-- no translation found for lock_screen_notifications_summary_on (7897541882520048340) -->
+    <skip />
+    <!-- no translation found for title_zen_mode (4587203077066257425) -->
+    <skip />
+    <!-- no translation found for zen_mode_settings_title (2689740350895257590) -->
+    <skip />
     <string name="notification_settings" msgid="8342078884790733726">"Izaziso"</string>
-    <string name="notification_settings_general" msgid="6144810019102260602">"Okujwayelekile"</string>
-    <string name="notification_settings_security" msgid="5096988798793488890">"Ukuphepha"</string>
     <string name="notification_settings_tweaks" msgid="659628355469765848">"Amathwikhi"</string>
-    <string name="notification_settings_apps" msgid="4911871909798584040">"Izinhlelo zokusebenza"</string>
+    <!-- no translation found for notification_settings_apps_title (1125354590652967250) -->
+    <skip />
     <string name="notification_app_settings_button" msgid="6685640230371477485">"Izilungiselelo zesaziso"</string>
+    <string name="setup_wifi_nfc_tag" msgid="654375687941126332">"Setha umaki wei-WiFi NFC"</string>
+    <string name="write_tag" msgid="8571858602896222537">"Bhala"</string>
+    <string name="status_awaiting_tap" msgid="2130145523773160617">"Thepha umaki ukuze ubhale..."</string>
+    <string name="status_invalid_password" msgid="2575271864572897406">"Iphasiwedi elingalungile, zama futhi."</string>
+    <string name="status_write_success" msgid="5228419086308251169">"Impumelelo!"</string>
+    <string name="status_failed_to_write" msgid="8072752734686294718">"Ayikwazi ukubhala idatha kumaki we-NFC. Uma inkinga iqhubeka, zama umaki owehlukile"</string>
+    <string name="status_tag_not_writable" msgid="2511611539977682175">"Umaki we-NFC akabhaleki. Sicela usebenzise umaki owehlukile."</string>
+    <!-- no translation found for default_sound (8821684447333687810) -->
+    <skip />
+    <!-- no translation found for loading_notification_apps (5031818677010335895) -->
+    <skip />
+    <!-- no translation found for app_notifications_title (5810577805218003760) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_show (6912410502091785846) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_priority (2692156022435161791) -->
+    <skip />
+    <!-- no translation found for app_notifications_dialog_done (3484067728568791014) -->
+    <skip />
 </resources>
diff --git a/res/values/colors.xml b/res/values/colors.xml
index c2ef388..acbccaa 100644
--- a/res/values/colors.xml
+++ b/res/values/colors.xml
@@ -45,4 +45,19 @@
     <color name="circle_avatar_frame_color">#ffffffff</color>
     <color name="circle_avatar_frame_shadow_color">#80000000</color>
     <color name="circle_avatar_frame_pressed_color">#ffffffff</color>
+
+    <color name="lock_pattern_background">#8000</color>
+
+    <color name="quantum_blue_grey_50">#ffeceff1</color>
+    <color name="quantum_blue_grey_100">#ffcfd8dc</color>
+    <color name="quantum_blue_grey_300">#ff90a4ae</color>
+    <color name="quantum_blue_grey_500">#ff607d8b</color>
+    <color name="quantum_blue_grey_700">#ff455a64</color>
+
+    <color name="quantum_orange_100">#ffffe0b2</color>
+    <color name="quantum_orange_300">#ffffb74d</color>
+    <color name="quantum_orange_500">#ffff9800</color>
+    <color name="quantum_orange_700">#fff57c00</color>
+    <color name="quantum_orange_A200">#ffffab40</color>
+    <color name="quantum_orange_A400">#ffff9100</color>
 </resources>
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index 3581d6a..8188164 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -78,4 +78,10 @@
     <integer name="preferences_left_pane_weight">4</integer>
     <!-- Weight of the right pane in a multi-pane preference layout. So the split is 40:60 -->
     <integer name="preferences_right_pane_weight">6</integer>
+
+    <dimen name="notification_app_icon_size">64dp</dimen>
+    <dimen name="notification_app_icon_badge_size">20dp</dimen>
+    <dimen name="notification_app_icon_badge_margin">4dp</dimen>
+    <dimen name="notification_app_settings_divider_height">48dp</dimen>
+    <dimen name="zen_mode_dropdown_width">160dp</dimen>
 </resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 3e73586..ad5c01d 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -455,6 +455,8 @@
     <!-- Radio Info screen. Label for a status item.  Used for diagnostic info screens, precise translation isn't needed -->
     <string name="radio_info_cellinfo_label">CellInfo:</string>
     <!-- Radio Info screen. Label for a status item.  Used for diagnostic info screens, precise translation isn't needed -->
+    <string name="radio_info_dcrtinfo_label">DcRtInfo:</string>
+    <!-- Radio Info screen. Label for a status item.  Used for diagnostic info screens, precise translation isn't needed -->
     <string name="radio_info_data_attempts_label">Data attempts:</string>
     <!-- Radio Info screen. Label for a status item.  Used for diagnostic info screens, precise translation isn't needed -->
 
@@ -1494,6 +1496,8 @@
     <!-- Substring of wifi status for wifi with authentication.  This version is for when the
          string is not first in the list (lowercase in english) -->
     <string name="wifi_secured_second_item">, secured with <xliff:g id="wifi_security_short">%1$s</xliff:g></string>
+    <!-- Message in WriteWifiConfigToNfcDialog when prompted to enter network password [CHAR LIMIT=150] -->
+    <string name="wifi_wps_nfc_enter_password">Enter your network password.</string>
 
     <!-- Do not translate.  Concise terminology for wifi with WEP security -->
     <string name="wifi_security_short_wep">WEP</string>
@@ -1763,9 +1767,7 @@
     <!-- Sound settings screen, notification light repeat pulsing title -->
     <string name="notification_pulse_title">Pulse notification light</string>
     <!-- Display settings screen, notification popups are enabled [CHAR LIMIT=30] -->
-    <string name="heads_up_enabled_title">Heads Up Notifications</string>
-    <!-- Display settings screen, notification popups are explained [CHAR LIMIT=45]-->
-    <string name="heads_up_enabled_summary">Important notifications will pop up</string>
+    <string name="heads_up_enabled_title">Pop up if high priority</string>
     <!-- Sound settings screen, the title of the volume bar to adjust the incoming call volume -->
     <string name="incoming_call_volume_title">Ringtone</string>
     <!-- Sound settings screen, the title of the volume bar to adjust the notification volume -->
@@ -4419,6 +4421,11 @@
     <!-- UI debug setting: force right to left layout summary [CHAR LIMIT=100] -->
     <string name="force_rtl_layout_all_locales_summary">Force screen layout direction to RTL for all locales</string>
 
+    <!-- UI debug setting: start low power mode [CHAR LIMIT=25] -->
+    <string name="low_power_mode">Low Power Mode</string>
+    <!-- UI debug setting: start low power mode summary[CHAR LIMIT=50] -->
+    <string name="low_power_mode_summary">Enable battery saving settings</string>
+
     <!-- UI debug setting: show how CPU is being used? [CHAR LIMIT=25] -->
     <string name="show_cpu_usage">Show CPU usage</string>
     <!-- UI debug setting: show cpu usage summary [CHAR LIMIT=50] -->
@@ -5029,40 +5036,116 @@
     <!-- Notifications on lockscreen -->
     <!-- Label for checkbox controlling the contents of notifications shown on
          the secure lockscreen [CHAR LIMIT=25] -->
-    <string name="lock_screen_notifications">Show when locked</string>
+    <string name="lock_screen_notifications">Show on lock screen</string>
     <!-- Summary for lock_screen_notifications: sensitive information will be
          hidden or redacted from notifications shown on a secure lock screen
          [CHAR LIMIT=50] -->
-    <string name="lock_screen_notifications_summary_off">Sensitive notification contents will be hidden on the lock screen</string>
+    <string name="lock_screen_notifications_summary_off">Unless content is sensitive</string>
     <!-- Summary for lock_screen_notifications: all information will be
          shown in notifications shown on a secure lock screen
          [CHAR LIMIT=50] -->
-    <string name="lock_screen_notifications_summary_on">All notification contents will be shown on the lock screen</string>
+    <string name="lock_screen_notifications_summary_on">All notifications</string>
 
-    <!-- [CHAR LIMIT=30] Sound settings screen, setting option name to change zen mode -->
-    <string name="title_zen_mode">Limited interruptions</string>
-    <!-- [CHAR LIMIT=30] Sound settings screen, description for configuring zen mode -->
-    <string name="configure_zen_mode_description">Configure limited interruptions</string>
+    <!-- [CHAR LIMIT=30] Notification settings screen, setting option name -->
+    <string name="title_zen_mode">Do not disturb</string>
+
     <!-- [CHAR LIMIT=30] Zen mode settings screen, activity title -->
-    <string name="zen_mode_settings_title">Limited Interruptions</string>
+    <string name="zen_mode_settings_title">Do not disturb</string>
 
     <!-- [CHAR LIMIT=20] Notifications settings header -->
     <string name="notification_settings">Notifications</string>
 
-    <!-- [CHAR LIMIT=20] Notifications settings: General section header -->
-    <string name="notification_settings_general">General</string>
-
-    <!-- [CHAR LIMIT=20] Notifications settings: Security section header -->
-    <string name="notification_settings_security">Security</string>
-
     <!-- [CHAR LIMIT=20] Notifications settings: Tweaks section header (eng
          builds only) -->
     <string name="notification_settings_tweaks">Tweaks</string>
 
     <!-- [CHAR LIMIT=20] Notifications settings: Apps section header -->
-    <string name="notification_settings_apps">Apps</string>
+    <string name="notification_settings_apps_title">App notifications</string>
 
     <!-- [CHAR LIMIT=NONE] Content description for per-app notification
          settings button -->
     <string name="notification_app_settings_button">Notification settings</string>
+
+    <!-- NFC WiFi pairing/setup strings-->
+
+    <!-- Write NFC tag for WiFi pairing/setup title -->
+    <string name="setup_wifi_nfc_tag">Set up WiFi NFC Tag</string>
+    <!-- Text for button to confirm writing tag -->
+    <string name="write_tag">Write</string>
+    <!-- Text to inform the user to tap a tag to complete the setup process -->
+    <string name="status_awaiting_tap">Tap a tag to write...</string>
+    <!-- Text to inform the user that the network key entered was incorrect -->
+    <string name="status_invalid_password">Invalid password, try again.</string>
+    <!-- Text displayed when tag successfully writen -->
+    <string name="status_write_success">Success!</string>
+    <!-- Text displayed in error cases (failure to write to tag) -->
+    <string name="status_failed_to_write">Unable to write data to NFC tag. If the problem persists, try a different tag</string>
+    <!-- Text displayed when tag is not writable -->
+    <string name="status_tag_not_writable">NFC tag is not writable. Please use a different tag.</string>
+
+    <!-- Option title for the default sound, context based on screen -->
+    <string name="default_sound">Default sound</string>
+
+    <!-- [CHAR LIMIT=NONE] Text when loading app list in notification settings -->
+    <string name="loading_notification_apps">Loading apps...</string>
+
+    <!-- [CHAR LIMIT=40] Notification settings: App notifications screen title -->
+    <string name="app_notifications_title">App notifications</string>
+
+    <!-- [CHAR LIMIT=30] Notification settings: App notifications dialog show option -->
+    <string name="app_notifications_dialog_show">Show notifications</string>
+
+    <!-- [CHAR LIMIT=30] Notification settings: App notifications dialog priority option -->
+    <string name="app_notifications_dialog_priority">High priority</string>
+
+    <!-- [CHAR LIMIT=20] Notification settings: App notifications dialog dismiss button caption -->
+    <string name="app_notifications_dialog_done">Done</string>
+
+    <!-- [CHAR LIMIT=40] Zen mode settings: General category text -->
+    <string name="zen_mode_general_category">When on, limit interruptions to</string>
+
+    <!-- [CHAR LIMIT=40] Zen mode settings: Automatic category text -->
+    <string name="zen_mode_automatic_category">Automatically turn on for sleep</string>
+
+     <!-- [CHAR LIMIT=20] Zen mode settings: Phone calls option -->
+    <string name="zen_mode_phone_calls">Phone calls</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: Messages option -->
+    <string name="zen_mode_messages">Messages</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: From option -->
+    <string name="zen_mode_from">From</string>
+
+    <!-- [CHAR LIMIT=30] Zen mode settings: From option value: Anyone -->
+    <string name="zen_mode_from_anyone">Anyone</string>
+
+    <!-- [CHAR LIMIT=30] Zen mode settings: From option value: Contacts -->
+    <string name="zen_mode_from_contacts">Contacts only</string>
+
+    <!-- [CHAR LIMIT=30] Zen mode settings: From option value: Starred contacts -->
+    <string name="zen_mode_from_starred">Starred contacts only</string>
+
+    <!-- [CHAR LIMIT=60] Zen mode settings: Reminder text about alarms -->
+    <string name="zen_mode_alarm_info">You&#8217;ll always hear alarms and timers in Do not disturb</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: When option -->
+    <string name="zen_mode_when">When</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: When option value: Never -->
+    <string name="zen_mode_when_never">Never</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: When option value: Every night -->
+    <string name="zen_mode_when_every_night">Every night</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: When option value: Weeknights -->
+    <string name="zen_mode_when_weeknights">Weeknights</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: Start time option -->
+    <string name="zen_mode_start_time">Start time</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: End time option -->
+    <string name="zen_mode_end_time">End time</string>
+
+    <!-- [CHAR LIMIT=20] Zen mode settings: End time option: Summary text value format -->
+    <string name="zen_mode_end_time_summary_format"><xliff:g id="formatted_time">%s</xliff:g> next day</string>
 </resources>
diff --git a/res/values/themes.xml b/res/values/themes.xml
index 7100f2d..5c8f6c1 100644
--- a/res/values/themes.xml
+++ b/res/values/themes.xml
@@ -70,5 +70,10 @@
         <item name="ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_holo_dark</item>
         <item name="ic_wps">@drawable/ic_wps_dark</item>
         <item name="wifi_signal">@drawable/wifi_signal_dark</item>
+
+        <item name="android:colorPrimaryLight">@color/quantum_blue_grey_100</item>
+        <item name="android:colorPrimary">@color/quantum_blue_grey_500</item>
+        <item name="android:colorPrimaryDark">@color/quantum_blue_grey_700</item>
+        <item name="android:colorAccent">@color/quantum_orange_A200</item>
     </style>
 </resources>
diff --git a/res/xml/development_prefs.xml b/res/xml/development_prefs.xml
index 2a9e125..e9aeae8 100644
--- a/res/xml/development_prefs.xml
+++ b/res/xml/development_prefs.xml
@@ -241,6 +241,11 @@
             android:summary="@string/strict_mode_summary"/>
 
         <CheckBoxPreference
+            android:key="low_power_mode"
+            android:title="@string/low_power_mode"
+            android:summary="@string/low_power_mode_summary"/>
+
+        <CheckBoxPreference
             android:key="show_cpu_usage"
             android:title="@string/show_cpu_usage"
             android:summary="@string/show_cpu_usage_summary"/>
diff --git a/res/xml/notification_settings.xml b/res/xml/notification_settings.xml
index 4979422..51b153e 100644
--- a/res/xml/notification_settings.xml
+++ b/res/xml/notification_settings.xml
@@ -19,67 +19,44 @@
         android:key="notification_settings"
         xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
 
-    <PreferenceCategory
-            android:key="category_general"
-            android:title="@string/notification_settings_general">
+    <com.android.settings.DefaultRingtonePreference
+            android:key="notification_sound"
+            android:title="@string/default_sound"
+            android:dialogTitle="@string/notification_sound_dialog_title"
+            android:persistent="false"
+            android:ringtoneType="notification" />
 
-        <com.android.settings.DefaultRingtonePreference
-                android:key="notification_sound"
-                android:title="@string/notification_sound_title"
-                android:dialogTitle="@string/notification_sound_dialog_title"
-                android:persistent="false"
-                android:ringtoneType="notification" />
+    <CheckBoxPreference
+            android:key="notification_pulse"
+            android:title="@string/notification_pulse_title"
+            android:persistent="false" />
 
-        <CheckBoxPreference
-                android:key="notification_pulse"
-                android:title="@string/notification_pulse_title"
-                android:persistent="false" />
+    <CheckBoxPreference
+            android:key="heads_up"
+            android:title="@string/heads_up_enabled_title"
+            android:persistent="false" />
 
-        <CheckBoxPreference
-                android:key="heads_up"
-                android:title="@string/heads_up_enabled_title"
-                android:summary="@string/heads_up_enabled_summary"
-                android:persistent="false" />
+    <CheckBoxPreference
+            android:key="toggle_lock_screen_notifications"
+            android:title="@string/lock_screen_notifications"
+            android:summaryOff="@string/lock_screen_notifications_summary_off"
+            android:summaryOn="@string/lock_screen_notifications_summary_on"
+            android:persistent="false" />
 
-        <PreferenceScreen
-                android:key="zen_mode"
-                android:title="@string/title_zen_mode"
-                android:fragment="com.android.settings.ZenModeSettings" />
+    <PreferenceScreen
+            android:key="configure"
+            android:title="@string/notification_settings_apps_title"
+            android:fragment="com.android.settings.notification.AppNotificationSettings" />
 
-    </PreferenceCategory>
-
-    <PreferenceCategory
-            android:key="category_security"
-            android:title="@string/notification_settings_security">
-
-        <CheckBoxPreference
-                android:key="toggle_lock_screen_notifications"
-                android:title="@string/lock_screen_notifications"
-                android:summaryOff="@string/lock_screen_notifications_summary_off"
-                android:summaryOn="@string/lock_screen_notifications_summary_on"
-                android:persistent="false" />
-
-        <Preference
-                android:key="manage_notification_access"
-                android:title="@string/manage_notification_access"
-                android:persistent="false"
-                android:fragment="com.android.settings.NotificationAccessSettings"/>
-
-    </PreferenceCategory>
-
-<!--
-    <PreferenceCategory
-            android:key="category_tweaks"
-            android:title="@string/notification_settings_tweaks"/>
+    <PreferenceScreen
+            android:key="zen_mode"
+            android:title="@string/title_zen_mode"
+            android:fragment="com.android.settings.notification.ZenModeSettings" />
 
     <Preference
-            android:title="Coming soon"
-            />
--->
-
-    <PreferenceCategory
-            android:key="category_apps"
-            android:title="@string/notification_settings_apps">
-    </PreferenceCategory>
+            android:key="manage_notification_access"
+            android:title="@string/manage_notification_access"
+            android:persistent="false"
+            android:fragment="com.android.settings.notification.NotificationAccessSettings" />
 
 </PreferenceScreen>
diff --git a/res/xml/security_settings_biometric_weak.xml b/res/xml/security_settings_biometric_weak.xml
index c2e8ab7..7226c6c 100644
--- a/res/xml/security_settings_biometric_weak.xml
+++ b/res/xml/security_settings_biometric_weak.xml
@@ -51,13 +51,9 @@
             android:key="power_button_instantly_locks"
             android:title="@string/lockpattern_settings_enable_power_button_instantly_locks"/>
 
-        <CheckBoxPreference
-            android:key="keyguard_enable_widgets"
-            android:title="@string/security_enable_widgets_title"/>
-
         <PreferenceScreen
-            android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
+            android:fragment="com.android.settings.OwnerInfoSettings"
             android:title="@string/owner_info_settings_title"
             android:summary="@string/owner_info_settings_summary"/>
 
diff --git a/res/xml/security_settings_chooser.xml b/res/xml/security_settings_chooser.xml
index 1a54315..f6e2e89 100644
--- a/res/xml/security_settings_chooser.xml
+++ b/res/xml/security_settings_chooser.xml
@@ -26,13 +26,9 @@
             android:summary="@string/unlock_set_unlock_mode_none"
             android:persistent="false"/>
 
-        <CheckBoxPreference
-            android:key="keyguard_enable_widgets"
-            android:title="@string/security_enable_widgets_title"/>
-
         <PreferenceScreen
-            android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
+            android:fragment="com.android.settings.OwnerInfoSettings"
             android:title="@string/owner_info_settings_title"
             android:summary="@string/owner_info_settings_summary"/>
 
diff --git a/res/xml/security_settings_encrypted.xml b/res/xml/security_settings_encrypted.xml
index e82dc56..37452f6 100644
--- a/res/xml/security_settings_encrypted.xml
+++ b/res/xml/security_settings_encrypted.xml
@@ -18,13 +18,13 @@
 
     <PreferenceCategory
         android:key="security_category"
-        android:title="@string/crypt_keeper_settings_title"
-    >
+        android:title="@string/crypt_keeper_settings_title">
+
         <Preference
             style="?android:preferenceInformationStyle"
+            android:key="crypt_keeper_encrypt_title"
             android:title="@string/crypt_keeper_encrypt_title"
-            android:summary="@string/crypt_keeper_encrypted_summary"
-        />
+            android:summary="@string/crypt_keeper_encrypted_summary"/>
 
     </PreferenceCategory>
 
diff --git a/res/xml/security_settings_lockscreen.xml b/res/xml/security_settings_lockscreen.xml
index eb40bd8..abf06e3 100644
--- a/res/xml/security_settings_lockscreen.xml
+++ b/res/xml/security_settings_lockscreen.xml
@@ -26,13 +26,9 @@
             android:summary="@string/unlock_set_unlock_mode_off"
             android:persistent="false"/>
 
-        <CheckBoxPreference
-            android:key="keyguard_enable_widgets"
-            android:title="@string/security_enable_widgets_title"/>
-
         <PreferenceScreen
-            android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
+            android:fragment="com.android.settings.OwnerInfoSettings"
             android:title="@string/owner_info_settings_title"
             android:summary="@string/owner_info_settings_summary"/>
     </PreferenceCategory>
diff --git a/res/xml/security_settings_misc.xml b/res/xml/security_settings_misc.xml
index 58f92d8..84ce96c 100644
--- a/res/xml/security_settings_misc.xml
+++ b/res/xml/security_settings_misc.xml
@@ -20,7 +20,8 @@
             android:title="@string/sim_lock_settings_title"
             android:persistent="false">
 
-        <Preference android:title="@string/sim_lock_settings_category"
+        <Preference android:key="sim_lock_settings"
+                android:title="@string/sim_lock_settings_category"
                 android:persistent="false">
             <intent android:action="android.intent.action.MAIN"
                     android:targetPackage="com.android.settings"
@@ -40,25 +41,25 @@
             android:title="@string/device_admin_title"
             android:persistent="false">
 
-        <Preference android:title="@string/manage_device_admin"
+        <Preference android:key="manage_device_admin"
+                android:title="@string/manage_device_admin"
                 android:summary="@string/manage_device_admin_summary"
                 android:persistent="false"
                 android:fragment="com.android.settings.DeviceAdminSettings"/>
 
-        <Preference android:title="@string/manage_trust_agents"
+        <Preference android:key="manage_trust_agents"
+                    android:title="@string/manage_trust_agents"
                     android:summary="@string/manage_trust_agents_summary"
                     android:persistent="false"
                     android:fragment="com.android.settings.TrustAgentSettings"/>
 
-        <CheckBoxPreference
-                android:key="toggle_install_applications"
+        <CheckBoxPreference android:key="toggle_install_applications"
                 android:title="@string/install_applications"
                 android:summaryOff="@string/install_unknown_applications"
                 android:summaryOn="@string/install_unknown_applications"
                 android:persistent="false" />
 
-        <CheckBoxPreference
-                android:key="toggle_verify_applications"
+        <CheckBoxPreference android:key="toggle_verify_applications"
                 android:title="@string/verify_applications"
                 android:summaryOff="@string/verify_applications_summary"
                 android:summaryOn="@string/verify_applications_summary"
@@ -74,7 +75,8 @@
                 style="?android:attr/preferenceInformationStyle"
                 android:persistent="false" />
 
-        <Preference android:title="@string/trusted_credentials"
+        <Preference android:key="trusted_credentials"
+                android:title="@string/trusted_credentials"
                 android:summary="@string/trusted_credentials_summary"
                 android:persistent="false"
                 android:fragment="com.android.settings.TrustedCredentialsSettings"/>
@@ -88,7 +90,7 @@
                     android:targetClass="com.android.certinstaller.CertInstallerMain"/>
         </Preference>
 
-        <Preference android:key="reset_credentials"
+        <Preference android:key="credentials_reset"
                 android:title="@string/credentials_reset"
                 android:summary="@string/credentials_reset_summary"
                 android:persistent="false">
diff --git a/res/xml/security_settings_nfc_unlock.xml b/res/xml/security_settings_nfc_unlock.xml
index c3442c6..63e5a74 100644
--- a/res/xml/security_settings_nfc_unlock.xml
+++ b/res/xml/security_settings_nfc_unlock.xml
@@ -16,27 +16,28 @@
 
 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
 
- <PreferenceCategory
-        android:key="security_category"
-        android:title="@string/lock_settings_nfc_title">
+    <PreferenceCategory
+            android:key="security_category"
+            android:title="@string/lock_settings_nfc_title">
+
     <CheckBoxPreference
-        android:key="nfc_unlock_enabled"
-        android:title="@string/nfc_unlock_enabled"
-        android:persistent="false" />
+            android:key="nfc_unlock_enabled"
+            android:title="@string/nfc_unlock_enabled"
+            android:persistent="false" />
 
     <Preference
-        android:title="@string/start_nfc_pairing"
-        android:key="nfc_pairing"
-        android:persistent="false"
-        android:dependency="nfc_unlock_enabled" >
-        <intent android:action="android.settings.PAIR_NFC_DEVICE"/>
+            android:key="nfc_pairing"
+            android:title="@string/start_nfc_pairing"
+            android:persistent="false"
+            android:dependency="nfc_unlock_enabled" >
+            <intent android:action="android.settings.PAIR_NFC_DEVICE"/>
     </Preference>
-  </PreferenceCategory>
 
-  <PreferenceCategory
-          android:key="nfc_unlock_tags_category"
-          android:title="@string/nfc_unlock_paired_tags_title">
+    </PreferenceCategory>
 
-  </PreferenceCategory>
+        <PreferenceCategory
+            android:key="nfc_unlock_tags_category"
+            android:title="@string/nfc_unlock_paired_tags_title">
+        </PreferenceCategory>
 
 </PreferenceScreen>
diff --git a/res/xml/security_settings_password.xml b/res/xml/security_settings_password.xml
index a102efa..0380716 100644
--- a/res/xml/security_settings_password.xml
+++ b/res/xml/security_settings_password.xml
@@ -38,13 +38,9 @@
             android:key="power_button_instantly_locks"
             android:title="@string/lockpattern_settings_enable_power_button_instantly_locks"/>
 
-        <CheckBoxPreference
-            android:key="keyguard_enable_widgets"
-            android:title="@string/security_enable_widgets_title"/>
-
         <PreferenceScreen
-            android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
+            android:fragment="com.android.settings.OwnerInfoSettings"
             android:title="@string/owner_info_settings_title"
             android:summary="@string/owner_info_settings_summary"/>
 
diff --git a/res/xml/security_settings_pattern.xml b/res/xml/security_settings_pattern.xml
index 0584e4a..8a8cb63 100644
--- a/res/xml/security_settings_pattern.xml
+++ b/res/xml/security_settings_pattern.xml
@@ -42,10 +42,6 @@
             android:key="power_button_instantly_locks"
             android:title="@string/lockpattern_settings_enable_power_button_instantly_locks"/>
 
-        <CheckBoxPreference
-            android:key="keyguard_enable_widgets"
-            android:title="@string/security_enable_widgets_title"/>
-
         <PreferenceScreen
             android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
diff --git a/res/xml/security_settings_pin.xml b/res/xml/security_settings_pin.xml
index 1417e21..c114631 100644
--- a/res/xml/security_settings_pin.xml
+++ b/res/xml/security_settings_pin.xml
@@ -38,13 +38,9 @@
             android:key="power_button_instantly_locks"
             android:title="@string/lockpattern_settings_enable_power_button_instantly_locks"/>
 
-        <CheckBoxPreference
-            android:key="keyguard_enable_widgets"
-            android:title="@string/security_enable_widgets_title"/>
-
         <PreferenceScreen
-            android:fragment="com.android.settings.OwnerInfoSettings"
             android:key="owner_info_settings"
+            android:fragment="com.android.settings.OwnerInfoSettings"
             android:title="@string/owner_info_settings_title"
             android:summary="@string/owner_info_settings_summary"/>
 
diff --git a/res/xml/settings_headers.xml b/res/xml/settings_headers.xml
index 73665cd..bf44854 100644
--- a/res/xml/settings_headers.xml
+++ b/res/xml/settings_headers.xml
@@ -85,7 +85,7 @@
     <header
         android:id="@+id/notification_settings"
         android:icon="@drawable/ic_settings_notifications"
-        android:fragment="com.android.settings.NotificationSettings"
+        android:fragment="com.android.settings.notification.NotificationSettings"
         android:title="@string/notification_settings" />
 
     <!-- Storage -->
diff --git a/res/xml/zen_mode_settings.xml b/res/xml/zen_mode_settings.xml
new file mode 100644
index 0000000..0a7a519
--- /dev/null
+++ b/res/xml/zen_mode_settings.xml
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2014 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+    android:key="zen_mode_settings"
+    android:title="@string/zen_mode_settings_title" >
+
+    <PreferenceCategory
+        android:key="general"
+        android:layout="@layout/notification_app_section"
+        android:title="@string/zen_mode_general_category" >
+        <SwitchPreference
+            android:key="phone_calls"
+            android:persistent="false"
+            android:switchTextOff=""
+            android:switchTextOn=""
+            android:title="@string/zen_mode_phone_calls" />
+        <SwitchPreference
+            android:key="messages"
+            android:persistent="false"
+            android:switchTextOff=""
+            android:switchTextOn=""
+            android:title="@string/zen_mode_messages" />
+    </PreferenceCategory>
+    <PreferenceCategory
+        android:key="automatic"
+        android:layout="@layout/notification_app_section"
+        android:title="@string/zen_mode_automatic_category" />
+
+</PreferenceScreen>
\ No newline at end of file
diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java
index 563a343..9f68023 100644
--- a/src/com/android/settings/DataUsageSummary.java
+++ b/src/com/android/settings/DataUsageSummary.java
@@ -152,7 +152,7 @@
  * Panel showing data usage history across various networks, including options
  * to inspect based on usage cycle and control through {@link NetworkPolicy}.
  */
-public class DataUsageSummary extends Fragment implements Indexable {
+public class DataUsageSummary extends HighlightingFragment implements Indexable {
     private static final String TAG = "DataUsage";
     private static final boolean LOGD = false;
 
@@ -181,6 +181,11 @@
     private static final String TAG_CONFIRM_AUTO_SYNC_CHANGE = "confirmAutoSyncChange";
     private static final String TAG_APP_DETAILS = "appDetails";
 
+    private static final String DATA_USAGE_ENABLE_MOBILE_KEY = "data_usage_enable_mobile";
+    private static final String DATA_USAGE_DISABLE_MOBILE_LIMIT_KEY =
+            "data_usage_disable_mobile_limit";
+    private static final String DATA_USAGE_CYCLE_KEY = "data_usage_cycle";
+
     private static final int LOADER_CHART_DATA = 2;
     private static final int LOADER_SUMMARY = 3;
 
@@ -351,6 +356,7 @@
 
             mDataEnabled = new Switch(inflater.getContext());
             mDataEnabledView = inflatePreference(inflater, mNetworkSwitches, mDataEnabled);
+            mDataEnabledView.setTag(DATA_USAGE_ENABLE_MOBILE_KEY);
             mDataEnabled.setOnCheckedChangeListener(mDataEnabledListener);
             mNetworkSwitches.addView(mDataEnabledView);
 
@@ -358,6 +364,7 @@
             mDisableAtLimit.setClickable(false);
             mDisableAtLimit.setFocusable(false);
             mDisableAtLimitView = inflatePreference(inflater, mNetworkSwitches, mDisableAtLimit);
+            mDisableAtLimitView.setTag(DATA_USAGE_DISABLE_MOBILE_LIMIT_KEY);
             mDisableAtLimitView.setClickable(true);
             mDisableAtLimitView.setFocusable(true);
             mDisableAtLimitView.setOnClickListener(mDisableAtLimitListener);
@@ -366,6 +373,7 @@
 
         // bind cycle dropdown
         mCycleView = mHeader.findViewById(R.id.cycles);
+        mCycleView.setTag(DATA_USAGE_CYCLE_KEY);
         mCycleSpinner = (Spinner) mCycleView.findViewById(R.id.cycles_spinner);
         mCycleAdapter = new CycleAdapter(context);
         mCycleSpinner.setAdapter(mCycleAdapter);
@@ -409,8 +417,8 @@
     }
 
     @Override
-    public void onResume() {
-        super.onResume();
+    public void onViewStateRestored(Bundle savedInstanceState) {
+        super.onViewStateRestored(savedInstanceState);
 
         // pick default tab based on incoming intent
         final Intent intent = getActivity().getIntent();
@@ -419,6 +427,18 @@
         // this kicks off chain reaction which creates tabs, binds the body to
         // selected network, and binds chart, cycles and detail list.
         updateTabs();
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+
+        getView().post(new Runnable() {
+            @Override
+            public void run() {
+                highlightViewIfNeeded();
+            }
+        });
 
         // kick off background task to update stats
         new AsyncTask<Void, Void, Void>() {
@@ -2403,18 +2423,21 @@
 
                 // Mobile data
                 data = new SearchIndexableRaw(context);
+                data.key = DATA_USAGE_ENABLE_MOBILE_KEY;
                 data.title = res.getString(R.string.data_usage_enable_mobile);
                 data.screenTitle = res.getString(R.string.data_usage_summary_title);
                 result.add(data);
 
                 // Set mobile data limit
                 data = new SearchIndexableRaw(context);
+                data.key = DATA_USAGE_DISABLE_MOBILE_LIMIT_KEY;
                 data.title = res.getString(R.string.data_usage_disable_mobile_limit);
                 data.screenTitle = res.getString(R.string.data_usage_summary_title);
                 result.add(data);
 
-                // Data usage cycke
+                // Data usage cycle
                 data = new SearchIndexableRaw(context);
+                data.key = DATA_USAGE_CYCLE_KEY;
                 data.title = res.getString(R.string.data_usage_cycle);
                 data.screenTitle = res.getString(R.string.data_usage_summary_title);
                 result.add(data);
diff --git a/src/com/android/settings/DevelopmentSettings.java b/src/com/android/settings/DevelopmentSettings.java
index 685dee5..bbee5e9 100644
--- a/src/com/android/settings/DevelopmentSettings.java
+++ b/src/com/android/settings/DevelopmentSettings.java
@@ -118,6 +118,7 @@
     private static final String USE_NUPLAYER_KEY = "use_nuplayer";
     private static final String USE_NUPLAYER_PROPERTY = "persist.sys.media.use-nuplayer";
     private static final String SHOW_CPU_USAGE_KEY = "show_cpu_usage";
+    private static final String LOW_POWER_MODE_KEY = "low_power_mode";
     private static final String FORCE_HARDWARE_UI_KEY = "force_hw_ui";
     private static final String FORCE_MSAA_KEY = "force_msaa";
     private static final String TRACK_FRAME_TIME_KEY = "track_frame_time";
@@ -184,6 +185,7 @@
     private CheckBoxPreference mShowScreenUpdates;
     private CheckBoxPreference mDisableOverlays;
     private CheckBoxPreference mShowCpuUsage;
+    private CheckBoxPreference mLowPowerMode;
     private CheckBoxPreference mForceHardwareUi;
     private CheckBoxPreference mForceMsaa;
     private CheckBoxPreference mShowHwScreenUpdates;
@@ -293,6 +295,7 @@
         mShowScreenUpdates = findAndInitCheckboxPref(SHOW_SCREEN_UPDATES_KEY);
         mDisableOverlays = findAndInitCheckboxPref(DISABLE_OVERLAYS_KEY);
         mShowCpuUsage = findAndInitCheckboxPref(SHOW_CPU_USAGE_KEY);
+        mLowPowerMode = findAndInitCheckboxPref(LOW_POWER_MODE_KEY);
         mForceHardwareUi = findAndInitCheckboxPref(FORCE_HARDWARE_UI_KEY);
         mForceMsaa = findAndInitCheckboxPref(FORCE_MSAA_KEY);
         mTrackFrameTime = addListPreference(TRACK_FRAME_TIME_KEY);
@@ -368,7 +371,7 @@
         super.onActivityCreated(savedInstanceState);
 
         final Activity activity = getActivity();
-        mEnabledSwitch = new Switch(activity);
+        mEnabledSwitch = new Switch(activity.getActionBar().getThemedContext());
 
         final int padding = activity.getResources().getDimensionPixelSize(
                 R.dimen.action_bar_switch_padding);
@@ -497,6 +500,7 @@
         updateShowTouchesOptions();
         updateFlingerOptions();
         updateCpuUsageOptions();
+        updateLowPowerModeOptions();
         updateHardwareUiOptions();
         updateMsaaOptions();
         updateTrackFrameTimeOptions();
@@ -1021,11 +1025,22 @@
                 mWifiDisplayCertification.isChecked() ? 1 : 0);
     }
 
+    private void updateLowPowerModeOptions() {
+        updateCheckBox(mLowPowerMode, Settings.Global.getInt(getActivity().getContentResolver(),
+                Settings.Global.LOW_POWER_MODE, 0) != 0);
+    }
+
     private void updateCpuUsageOptions() {
         updateCheckBox(mShowCpuUsage, Settings.Global.getInt(getActivity().getContentResolver(),
                 Settings.Global.SHOW_PROCESSES, 0) != 0);
     }
 
+    private void writeLowPowerModeOptions() {
+        boolean value = mLowPowerMode.isChecked();
+        Settings.Global.putInt(getActivity().getContentResolver(),
+                Settings.Global.LOW_POWER_MODE, value ? 1 : 0);
+    }
+
     private void writeCpuUsageOptions() {
         boolean value = mShowCpuUsage.isChecked();
         Settings.Global.putInt(getActivity().getContentResolver(),
@@ -1286,6 +1301,8 @@
             writeShowUpdatesOption();
         } else if (preference == mDisableOverlays) {
             writeDisableOverlaysOption();
+        } else if (preference == mLowPowerMode) {
+            writeLowPowerModeOptions();
         } else if (preference == mShowCpuUsage) {
             writeCpuUsageOptions();
         } else if (preference == mImmediatelyDestroyActivities) {
diff --git a/src/com/android/settings/DreamSettings.java b/src/com/android/settings/DreamSettings.java
index 1575bee..41cd75d 100644
--- a/src/com/android/settings/DreamSettings.java
+++ b/src/com/android/settings/DreamSettings.java
@@ -86,7 +86,7 @@
         final Activity activity = getActivity();
 
         mBackend = new DreamBackend(activity);
-        mSwitch = new Switch(activity);
+        mSwitch = new Switch(activity.getActionBar().getThemedContext());
         mSwitch.setOnCheckedChangeListener(new OnCheckedChangeListener() {
             @Override
             public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
diff --git a/src/com/android/settings/HighlightingFragment.java b/src/com/android/settings/HighlightingFragment.java
new file mode 100644
index 0000000..a1d6be0
--- /dev/null
+++ b/src/com/android/settings/HighlightingFragment.java
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings;
+
+import android.app.Fragment;
+import android.graphics.drawable.Drawable;
+import android.os.Bundle;
+import android.text.TextUtils;
+import android.view.View;
+import android.view.ViewGroup;
+
+public class HighlightingFragment extends Fragment {
+
+    private static final String TAG = "HighlightSettingsFragment";
+
+    private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 400;
+    private static final String SAVE_HIGHLIGHTED_KEY = "android:view_highlighted";
+
+    private String mViewKey;
+    private boolean mViewHighlighted = false;
+
+    @Override
+    public void onCreate(Bundle icicle) {
+        super.onCreate(icicle);
+
+        if (icicle != null) {
+            mViewHighlighted = icicle.getBoolean(SAVE_HIGHLIGHTED_KEY);
+        }
+    }
+
+    @Override
+    public void onSaveInstanceState(Bundle outState) {
+        super.onSaveInstanceState(outState);
+
+        outState.putBoolean(SAVE_HIGHLIGHTED_KEY, mViewHighlighted);
+    }
+
+    @Override
+    public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+
+        final Bundle args = getArguments();
+        if (args != null) {
+            mViewKey = args.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
+            highlightViewIfNeeded();
+        }
+    }
+
+    public void highlightViewIfNeeded() {
+        if (!mViewHighlighted &&!TextUtils.isEmpty(mViewKey)) {
+            highlightView(mViewKey);
+        }
+    }
+
+    private Drawable getHighlightDrawable() {
+        return getResources().getDrawable(R.drawable.preference_highlight);
+    }
+
+    private void highlightView(String key) {
+        final Drawable highlight = getHighlightDrawable();
+
+        // Try locating the View thru its Tag / Key
+        final View view = findViewForKey(getView(), key);
+        if (view != null ) {
+            view.setBackground(highlight);
+
+            getView().postDelayed(new Runnable() {
+                @Override
+                public void run() {
+                    final int centerX = view.getWidth() / 2;
+                    final int centerY = view.getHeight() / 2;
+                    highlight.setHotspot(0, centerX, centerY);
+                    highlight.clearHotspots();
+                }
+            }, DELAY_HIGHLIGHT_DURATION_MILLIS);
+
+            mViewHighlighted = true;
+        }
+    }
+
+    private View findViewForKey(View root, String key) {
+        if (checkTag(root, key)) {
+            return root;
+        }
+        if (root instanceof ViewGroup) {
+            final ViewGroup group = (ViewGroup) root;
+            final int count = group.getChildCount();
+            for (int n = 0; n < count; n++) {
+                final View child = group.getChildAt(n);
+                final View view = findViewForKey(child, key);
+                if (view != null) {
+                    return view;
+                }
+            }
+        }
+        return null;
+    }
+
+    private boolean checkTag(View view, String key) {
+        final Object tag = view.getTag();
+        if (tag == null || !(tag instanceof String)) {
+            return false;
+        }
+        final String viewKey = (String) tag;
+        return (!TextUtils.isEmpty(viewKey) && viewKey.equals(key));
+    }
+}
diff --git a/src/com/android/settings/NotificationSettings.java b/src/com/android/settings/NotificationSettings.java
deleted file mode 100644
index d0b64a6..0000000
--- a/src/com/android/settings/NotificationSettings.java
+++ /dev/null
@@ -1,412 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings;
-
-import android.content.ContentResolver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.pm.ActivityInfo;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.PackageManager;
-import android.content.pm.ResolveInfo;
-import android.database.ContentObserver;
-import android.graphics.drawable.Drawable;
-import android.media.RingtoneManager;
-import android.os.AsyncTask;
-import android.os.Build;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.Message;
-import android.preference.CheckBoxPreference;
-import android.preference.Preference;
-import android.preference.Preference.OnPreferenceClickListener;
-import android.preference.PreferenceGroup;
-import android.preference.PreferenceScreen;
-import android.provider.Settings;
-import android.util.AttributeSet;
-import android.util.Log;
-import android.view.View;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import java.text.Collator;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.HashSet;
-import java.util.List;
-
-public class NotificationSettings extends SettingsPreferenceFragment implements
-        Preference.OnPreferenceChangeListener, OnPreferenceClickListener {
-    private static final String TAG = "NotificationSettings";
-
-    private static final Intent APP_NOTIFICATION_PREFS_CATEGORY_INTENT
-            = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_NOTIFICATION_PREFERENCES);
-
-    private static final String KEY_NOTIFICATION_SOUND = "notification_sound";
-    private static final String KEY_NOTIFICATION_ACCESS = "manage_notification_access";
-    private static final String KEY_LOCK_SCREEN_NOTIFICATIONS = "toggle_lock_screen_notifications";
-    private static final String KEY_HEADS_UP = "heads_up";
-    private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
-
-    private static final String KEY_SECURITY_CATEGORY = "category_security";
-    private static final String KEY_APPS_CATEGORY = "category_apps";
-    private static final String KEY_TWEAKS_CATEGORY = "category_tweaks"; // power toys, eng only
-
-    private static final int MSG_UPDATE_SOUND_SUMMARY = 2;
-
-    private Context mContext;
-    private PackageManager mPM;
-
-    private Preference mNotificationSoundPreference;
-    private Preference mNotificationAccess;
-    private CheckBoxPreference mLockscreenNotifications;
-    private CheckBoxPreference mHeadsUp;
-    private CheckBoxPreference mNotificationPulse;
-    private PreferenceGroup mAppsPreference;
-
-    private final Runnable mRingtoneLookupRunnable = new Runnable() {
-        @Override
-        public void run() {
-            if (mNotificationSoundPreference != null) {
-                final CharSequence summary = SoundSettings.updateRingtoneName(
-                        mContext, RingtoneManager.TYPE_NOTIFICATION);
-                if (summary != null) {
-                    mHandler.sendMessage(
-                            mHandler.obtainMessage(MSG_UPDATE_SOUND_SUMMARY, summary));
-                }
-            }
-        }
-    };
-
-    private final Handler mHandler = new Handler() {
-        @Override
-        public void handleMessage(Message msg) {
-            switch (msg.what) {
-                case MSG_UPDATE_SOUND_SUMMARY:
-                    mNotificationSoundPreference.setSummary((CharSequence) msg.obj);
-                    break;
-            }
-        }
-    };
-
-    private final ArrayList<AppNotificationInfo> mAppNotificationInfo
-            = new ArrayList<AppNotificationInfo>();
-    private final HashSet<String> mAppNotificationInfoPackages = new HashSet<String>();
-    private final Comparator<AppNotificationInfo> mAppComparator = new Comparator<AppNotificationInfo>() {
-        private final Collator sCollator = Collator.getInstance();
-        @Override
-        public int compare(AppNotificationInfo lhs, AppNotificationInfo rhs) {
-            return sCollator.compare(lhs.label, rhs.label);
-        }
-    };
-
-    private final Runnable mCollectAppsRunnable = new Runnable() {
-        @Override
-        public void run() {
-            synchronized (mAppNotificationInfo) {
-                mAppNotificationInfo.clear();
-                mAppNotificationInfoPackages.clear();
-
-                final PackageManager pm = getPackageManager();
-
-                final List<ResolveInfo> resolveInfos = pm.queryIntentActivities(APP_NOTIFICATION_PREFS_CATEGORY_INTENT,
-                        PackageManager.MATCH_DEFAULT_ONLY);
-
-                for (ResolveInfo ri : resolveInfos) {
-                    final ActivityInfo activityInfo = ri.activityInfo;
-                    final ApplicationInfo appInfo = activityInfo.applicationInfo;
-                    if (mAppNotificationInfoPackages.contains(activityInfo.packageName)) {
-                        Log.v(TAG, "Ignoring duplicate notification preference activity ("
-                                + activityInfo.name + ") for package "
-                                + activityInfo.packageName);
-                        continue;
-                    }
-                    final AppNotificationInfo info = new AppNotificationInfo();
-                    mAppNotificationInfoPackages.add(activityInfo.packageName);
-
-                    info.label = appInfo.loadLabel(pm);
-                    info.icon = appInfo.loadIcon(pm);
-                    info.name = activityInfo.name;
-                    info.pkg = activityInfo.packageName;
-                    mAppNotificationInfo.add(info);
-                }
-
-                Collections.sort(mAppNotificationInfo, mAppComparator);
-                mHandler.post(mRefreshAppsListRunnable);
-            }
-        }
-    };
-
-    private final Runnable mRefreshAppsListRunnable = new Runnable() {
-        @Override
-        public void run() {
-            synchronized (mAppNotificationInfo) {
-                mAppsPreference.removeAll();
-                Preference p = getPreferenceScreen().findPreference(mAppsPreference.getKey());
-                final int N = mAppNotificationInfo.size();
-                if (N == 0 && p != null) {
-                    getPreferenceScreen().removePreference(p);
-                } else if (N > 0 && p == null) {
-                    getPreferenceScreen().addPreference(mAppsPreference);
-                }
-                for (int i = 0; i < N; i++) {
-                    final AppNotificationInfo info = mAppNotificationInfo.get(i);
-                    Preference pref = new AppNotificationPreference(mContext);
-                    pref.setTitle(info.label);
-                    pref.setIcon(info.icon);
-                    pref.setIntent(new Intent(Intent.ACTION_MAIN)
-                            .setClassName(info.pkg, info.name));
-                    mAppsPreference.addPreference(pref);
-                }
-            }
-        }
-    };
-
-
-    @Override
-    public void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        mContext = getActivity();
-        final ContentResolver resolver = mContext.getContentResolver();
-
-        mPM = mContext.getPackageManager();
-
-        addPreferencesFromResource(R.xml.notification_settings);
-
-        final PreferenceScreen root = getPreferenceScreen();
-        final PreferenceGroup securityCategory = (PreferenceGroup)
-                root.findPreference(KEY_SECURITY_CATEGORY);
-
-        PreferenceGroup tweaksCategory = (PreferenceGroup)
-                root.findPreference(KEY_TWEAKS_CATEGORY);
-
-        if (tweaksCategory != null
-                && !(Build.TYPE.equals("eng") || Build.TYPE.equals("userdebug"))) {
-            root.removePreference(tweaksCategory);
-            tweaksCategory = null;
-        }
-
-        mNotificationSoundPreference = findPreference(KEY_NOTIFICATION_SOUND);
-
-        mNotificationAccess = findPreference(KEY_NOTIFICATION_ACCESS);
-        refreshNotificationListeners();
-
-        mLockscreenNotifications
-                = (CheckBoxPreference) root.findPreference(KEY_LOCK_SCREEN_NOTIFICATIONS);
-        if (mLockscreenNotifications != null) {
-            if (!getDeviceLockscreenNotificationsEnabled()) {
-                if (securityCategory != null) {
-                    securityCategory.removePreference(mLockscreenNotifications);
-                }
-            } else {
-                mLockscreenNotifications.setChecked(getLockscreenAllowPrivateNotifications());
-            }
-        }
-
-        mHeadsUp = (CheckBoxPreference) findPreference(KEY_HEADS_UP);
-        if (mHeadsUp != null) {
-            updateHeadsUpMode(resolver);
-            mHeadsUp.setOnPreferenceChangeListener(this);
-            resolver.registerContentObserver(
-                    Settings.Global.getUriFor(Settings.Global.HEADS_UP_NOTIFICATIONS_ENABLED),
-                    false, new ContentObserver(mHandler) {
-                @Override
-                public void onChange(boolean selfChange) {
-                    updateHeadsUpMode(resolver);
-                }
-            });
-        }
-        mNotificationPulse = (CheckBoxPreference) findPreference(KEY_NOTIFICATION_PULSE);
-
-        if (mNotificationPulse != null
-                && getResources().getBoolean(
-                com.android.internal.R.bool.config_intrusiveNotificationLed) == false) {
-            getPreferenceScreen().removePreference(mNotificationPulse);
-        } else {
-            try {
-                mNotificationPulse.setChecked(Settings.System.getInt(resolver,
-                        Settings.System.NOTIFICATION_LIGHT_PULSE) == 1);
-                mNotificationPulse.setOnPreferenceChangeListener(this);
-            } catch (Settings.SettingNotFoundException snfe) {
-                Log.e(TAG, Settings.System.NOTIFICATION_LIGHT_PULSE + " not found");
-            }
-        }
-        mAppsPreference = (PreferenceGroup) root.findPreference(KEY_APPS_CATEGORY);
-        root.removePreference(mAppsPreference);
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
-
-        refreshNotificationListeners();
-        lookupRingtoneNames();
-        loadAppsList();
-    }
-
-    private void loadAppsList() {
-        AsyncTask.execute(mCollectAppsRunnable);
-    }
-
-    @Override
-    public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
-        final String key = preference.getKey();
-
-        if (KEY_LOCK_SCREEN_NOTIFICATIONS.equals(key)) {
-            Settings.Secure.putInt(getContentResolver(),
-                    Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS,
-                    mLockscreenNotifications.isChecked() ? 1 : 0);
-        } else if (KEY_HEADS_UP.equals(key)) {
-            setHeadsUpMode(getContentResolver(), mHeadsUp.isChecked());
-        } else if (KEY_NOTIFICATION_PULSE.equals(key)) {
-            Settings.System.putInt(getContentResolver(),
-                    Settings.System.NOTIFICATION_LIGHT_PULSE,
-                    mNotificationPulse.isChecked() ? 1 : 0);
-        } else {
-            return super.onPreferenceTreeClick(preferenceScreen, preference);
-        }
-
-        return true;
-    }
-
-    @Override
-    public boolean onPreferenceChange(Preference preference, Object objValue) {
-        return true;
-    }
-
-    @Override
-    public boolean onPreferenceClick(Preference preference) {
-        return false;
-    }
-
-    // === Heads-up notifications ===
-
-    private void updateHeadsUpMode(ContentResolver resolver) {
-        mHeadsUp.setChecked(Settings.Global.HEADS_UP_ON == Settings.Global.getInt(resolver,
-                Settings.Global.HEADS_UP_NOTIFICATIONS_ENABLED, Settings.Global.HEADS_UP_OFF));
-    }
-
-    private void setHeadsUpMode(ContentResolver resolver, boolean value) {
-        Settings.Global.putInt(resolver, Settings.Global.HEADS_UP_NOTIFICATIONS_ENABLED,
-                value ? Settings.Global.HEADS_UP_ON : Settings.Global.HEADS_UP_OFF);
-    }
-
-    // === Lockscreen (public / private) notifications ===
-
-    private boolean getDeviceLockscreenNotificationsEnabled() {
-        return 0 != Settings.Global.getInt(getContentResolver(),
-                Settings.Global.LOCK_SCREEN_SHOW_NOTIFICATIONS, 0);
-    }
-
-    private boolean getLockscreenAllowPrivateNotifications() {
-        return 0 != Settings.Secure.getInt(getContentResolver(),
-                Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0);
-    }
-
-    // === Notification listeners ===
-
-    private int getNumEnabledNotificationListeners() {
-        final String flat = Settings.Secure.getString(getContentResolver(),
-                Settings.Secure.ENABLED_NOTIFICATION_LISTENERS);
-        if (flat == null || "".equals(flat)) return 0;
-        final String[] components = flat.split(":");
-        return components.length;
-    }
-
-    private void refreshNotificationListeners() {
-        if (mNotificationAccess != null) {
-            final PreferenceGroup securityCategory
-                    = (PreferenceGroup) getPreferenceScreen().findPreference(KEY_SECURITY_CATEGORY);
-
-            final int total = NotificationAccessSettings.getListenersCount(mPM);
-            if (total == 0) {
-                if (securityCategory != null) {
-                    securityCategory.removePreference(mNotificationAccess);
-                }
-            } else {
-                final int n = getNumEnabledNotificationListeners();
-                if (n == 0) {
-                    mNotificationAccess.setSummary(getResources().getString(
-                            R.string.manage_notification_access_summary_zero));
-                } else {
-                    mNotificationAccess.setSummary(String.format(getResources().getQuantityString(
-                            R.plurals.manage_notification_access_summary_nonzero,
-                            n, n)));
-                }
-            }
-        }
-    }
-
-    // === Ringtone ===
-
-    private void lookupRingtoneNames() {
-        new Thread(mRingtoneLookupRunnable).start();
-    }
-
-    // === Per-app notification settings row ==
-
-    private static class AppNotificationPreference extends Preference {
-        private Intent mIntent;
-
-        public AppNotificationPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
-            super(context, attrs, defStyleAttr, defStyleRes);
-
-            setLayoutResource(R.layout.notification_app);
-        }
-
-        public AppNotificationPreference(Context context, AttributeSet attrs, int defStyleAttr) {
-            this(context, attrs, defStyleAttr, 0);
-        }
-
-        public AppNotificationPreference(Context context, AttributeSet attrs) {
-            this(context, attrs, 0);
-        }
-
-        public AppNotificationPreference(Context context) {
-            this(context, null);
-        }
-
-        public void setIntent(Intent intent) {
-            mIntent = intent;
-        }
-
-        @Override
-        protected void onBindView(View view) {
-            super.onBindView(view);
-
-            ImageView icon = (ImageView) view.findViewById(android.R.id.icon);
-            icon.setImageDrawable(getIcon());
-            TextView title = (TextView) view.findViewById(android.R.id.title);
-            title.setText(getTitle());
-            ImageView settingsButton = (ImageView) view.findViewById(android.R.id.button2);
-            settingsButton.setOnClickListener(new View.OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    getContext().startActivity(mIntent);
-                }
-            });
-        }
-    }
-
-    private static class AppNotificationInfo {
-        public Drawable icon;
-        public CharSequence label;
-        public String name;
-        public String pkg;
-    }
-}
diff --git a/src/com/android/settings/RadioInfo.java b/src/com/android/settings/RadioInfo.java
index df93626..4c86144 100644
--- a/src/com/android/settings/RadioInfo.java
+++ b/src/com/android/settings/RadioInfo.java
@@ -32,6 +32,7 @@
 import android.os.SystemProperties;
 import android.telephony.CellInfo;
 import android.telephony.CellLocation;
+import android.telephony.DataConnectionRealTimeInfo;
 import android.telephony.PhoneStateListener;
 import android.telephony.ServiceState;
 import android.telephony.TelephonyManager;
@@ -103,6 +104,7 @@
     private TextView mLocation;
     private TextView mNeighboringCids;
     private TextView mCellInfo;
+    private TextView mDcRtInfoTv;
     private TextView resets;
     private TextView attempts;
     private TextView successes;
@@ -171,6 +173,12 @@
             log("onCellInfoChanged: arrayCi=" + arrayCi);
             updateCellInfoTv(arrayCi);
         }
+
+        @Override
+        public void onDataConnectionRealTimeInfoChanged(DataConnectionRealTimeInfo dcRtInfo) {
+            log("onDataConnectionRealTimeInfoChanged: dcRtInfo=" + dcRtInfo);
+            updateDcRtInfoTv(dcRtInfo);
+        }
     };
 
     private Handler mHandler = new Handler() {
@@ -264,6 +272,7 @@
         mLocation = (TextView) findViewById(R.id.location);
         mNeighboringCids = (TextView) findViewById(R.id.neighboring);
         mCellInfo = (TextView) findViewById(R.id.cellinfo);
+        mDcRtInfoTv = (TextView) findViewById(R.id.dcrtinfo);
 
         resets = (TextView) findViewById(R.id.resets);
         attempts = (TextView) findViewById(R.id.attempts);
@@ -366,7 +375,8 @@
                 | PhoneStateListener.LISTEN_CELL_LOCATION
                 | PhoneStateListener.LISTEN_MESSAGE_WAITING_INDICATOR
                 | PhoneStateListener.LISTEN_CALL_FORWARDING_INDICATOR
-                | PhoneStateListener.LISTEN_CELL_INFO);
+                | PhoneStateListener.LISTEN_CELL_INFO
+                | PhoneStateListener.LISTEN_DATA_CONNECTION_REAL_TIME_INFO);
     }
 
     @Override
@@ -541,6 +551,10 @@
         mCellInfo.setText(value.toString());
     }
 
+    private final void updateDcRtInfoTv(DataConnectionRealTimeInfo dcRtInfo) {
+        mDcRtInfoTv.setText(dcRtInfo.toString());
+    }
+
     private final void
     updateMessageWaiting() {
         mMwi.setText(String.valueOf(mMwiValue));
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java
index 30a1df7..0ab9ea7 100644
--- a/src/com/android/settings/SecuritySettings.java
+++ b/src/com/android/settings/SecuritySettings.java
@@ -75,7 +75,6 @@
     private static final String KEY_DEVICE_ADMIN_CATEGORY = "device_admin_category";
     private static final String KEY_LOCK_AFTER_TIMEOUT = "lock_after_timeout";
     private static final String KEY_OWNER_INFO_SETTINGS = "owner_info_settings";
-    private static final String KEY_ENABLE_WIDGETS = "keyguard_enable_widgets";
 
     private static final int SET_OR_CHANGE_LOCK_METHOD_REQUEST = 123;
     private static final int CONFIRM_EXISTING_FOR_BIOMETRIC_WEAK_IMPROVE_REQUEST = 124;
@@ -111,7 +110,6 @@
     private DialogInterface mWarnInstallApps;
     private CheckBoxPreference mToggleVerifyApps;
     private CheckBoxPreference mPowerButtonInstantlyLocks;
-    private CheckBoxPreference mEnableKeyguardWidgets;
 
     private boolean mIsPrimary;
 
@@ -270,31 +268,6 @@
             }
         }
 
-        // Enable or disable keyguard widget checkbox based on DPM state
-        mEnableKeyguardWidgets = (CheckBoxPreference) root.findPreference(KEY_ENABLE_WIDGETS);
-        if (mEnableKeyguardWidgets != null) {
-            if (ActivityManager.isLowRamDeviceStatic()
-                    || mLockPatternUtils.isLockScreenDisabled()) {
-                // Widgets take a lot of RAM, so disable them on low-memory devices
-                PreferenceGroup securityCategory
-                        = (PreferenceGroup) root.findPreference(KEY_SECURITY_CATEGORY);
-                if (securityCategory != null) {
-                    securityCategory.removePreference(root.findPreference(KEY_ENABLE_WIDGETS));
-                    mEnableKeyguardWidgets = null;
-                }
-            } else {
-                final boolean disabled = (0 != (mDPM.getKeyguardDisabledFeatures(null)
-                        & DevicePolicyManager.KEYGUARD_DISABLE_WIDGETS_ALL));
-                if (disabled) {
-                    mEnableKeyguardWidgets.setSummary(
-                            R.string.security_enable_widgets_disabled_summary);
-                } else {
-                    mEnableKeyguardWidgets.setSummary("");
-                }
-                mEnableKeyguardWidgets.setEnabled(!disabled);
-            }
-        }
-
         // Show password
         mShowPassword = (CheckBoxPreference) root.findPreference(KEY_SHOW_PASSWORD);
         mResetCredentials = root.findPreference(KEY_RESET_CREDENTIALS);
@@ -504,10 +477,6 @@
         if (mResetCredentials != null) {
             mResetCredentials.setEnabled(!mKeyStore.isEmpty());
         }
-
-        if (mEnableKeyguardWidgets != null) {
-            mEnableKeyguardWidgets.setChecked(lockPatternUtils.getWidgetsEnabled());
-        }
     }
 
     @Override
@@ -561,8 +530,6 @@
             lockPatternUtils.setVisiblePatternEnabled(isToggled(preference));
         } else if (KEY_POWER_INSTANTLY_LOCKS.equals(key)) {
             lockPatternUtils.setPowerButtonInstantlyLocks(isToggled(preference));
-        } else if (KEY_ENABLE_WIDGETS.equals(key)) {
-            lockPatternUtils.setWidgetsEnabled(mEnableKeyguardWidgets.isChecked());
         } else if (preference == mShowPassword) {
             Settings.System.putInt(getContentResolver(), Settings.System.TEXT_SHOW_PASSWORD,
                     mShowPassword.isChecked() ? 1 : 0);
@@ -713,24 +680,6 @@
                 result.add(data);
             }
 
-            LockPatternUtils lockPatternUtils = new LockPatternUtils(context);
-
-            if (!ActivityManager.isLowRamDeviceStatic()
-                    && !lockPatternUtils.isLockScreenDisabled()) {
-                DevicePolicyManager dpm = (DevicePolicyManager)
-                        context.getSystemService(Context.DEVICE_POLICY_SERVICE);
-
-                final boolean disabled = (0 != (dpm.getKeyguardDisabledFeatures(null)
-                        & DevicePolicyManager.KEYGUARD_DISABLE_WIDGETS_ALL));
-
-                if (disabled) {
-                    data = new SearchIndexableRaw(context);
-                    data.title = res.getString(R.string.security_enable_widgets_disabled_summary);
-                    data.screenTitle = screenTitle;
-                    result.add(data);
-                }
-            }
-
             // Credential storage
             final UserManager um = (UserManager) context.getSystemService(Context.USER_SERVICE);
 
@@ -771,12 +720,6 @@
                 keys.add(KEY_SIM_LOCK);
             }
 
-            if (ActivityManager.isLowRamDeviceStatic()
-                    || lockPatternUtils.isLockScreenDisabled()) {
-                // Widgets take a lot of RAM, so disable them on low-memory devices
-                keys.add(KEY_ENABLE_WIDGETS);
-            }
-
             final UserManager um = (UserManager) context.getSystemService(Context.USER_SERVICE);
             if (um.hasUserRestriction(UserManager.DISALLOW_CONFIG_CREDENTIALS)) {
                 keys.add(KEY_CREDENTIALS_MANAGER);
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 329e4bf..964c444 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -16,8 +16,6 @@
 
 package com.android.settings;
 
-import android.accessibilityservice.AccessibilityService;
-import android.accessibilityservice.AccessibilityServiceInfo;
 import android.accounts.Account;
 import android.accounts.AccountManager;
 import android.accounts.OnAccountsUpdateListener;
@@ -40,14 +38,10 @@
 import android.content.res.Configuration;
 import android.content.res.TypedArray;
 import android.content.res.XmlResourceParser;
-import android.database.ContentObserver;
-import android.hardware.input.InputManager;
-import android.net.Uri;
 import android.nfc.NfcAdapter;
 import android.os.Bundle;
 import android.os.Handler;
 import android.os.INetworkManagementService;
-import android.os.Looper;
 import android.os.Message;
 import android.os.RemoteException;
 import android.os.ServiceManager;
@@ -57,10 +51,6 @@
 import android.preference.PreferenceFragment;
 import android.preference.PreferenceManager;
 import android.preference.PreferenceScreen;
-import android.print.PrintManager;
-import android.printservice.PrintService;
-import android.printservice.PrintServiceInfo;
-import android.provider.UserDictionary;
 import android.text.TextUtils;
 import android.util.AttributeSet;
 import android.util.Log;
@@ -71,14 +61,10 @@
 import android.view.MenuItem;
 import android.view.View;
 import android.view.View.OnClickListener;
-import android.view.accessibility.AccessibilityManager;
-import android.view.inputmethod.InputMethodInfo;
-import android.view.inputmethod.InputMethodManager;
 import android.widget.Button;
 import android.widget.ListView;
 
 import android.widget.SearchView;
-import com.android.internal.content.PackageMonitor;
 import com.android.internal.util.ArrayUtils;
 import com.android.internal.util.XmlUtils;
 import com.android.settings.accessibility.AccessibilitySettings;
@@ -98,6 +84,7 @@
 import com.android.settings.deviceinfo.Memory;
 import com.android.settings.deviceinfo.UsbSettings;
 import com.android.settings.fuelgauge.PowerUsageSummary;
+import com.android.settings.search.DynamicIndexableContentMonitor;
 import com.android.settings.search.Index;
 import com.android.settings.inputmethod.InputMethodAndLanguageSettings;
 import com.android.settings.inputmethod.KeyboardLayoutPickerFragment;
@@ -106,9 +93,12 @@
 import com.android.settings.location.LocationSettings;
 import com.android.settings.nfc.AndroidBeam;
 import com.android.settings.nfc.PaymentSettings;
+import com.android.settings.notification.NotificationAccessSettings;
+import com.android.settings.notification.NotificationSettings;
+import com.android.settings.notification.NotificationStation;
+import com.android.settings.notification.ZenModeSettings;
 import com.android.settings.print.PrintJobSettingsFragment;
 import com.android.settings.print.PrintSettingsFragment;
-import com.android.settings.search.SearchIndexableRaw;
 import com.android.settings.tts.TextToSpeechSettings;
 import com.android.settings.users.UserSettings;
 import com.android.settings.vpn2.VpnSettings;
@@ -409,6 +399,10 @@
         mSearchMenuItem = menu.findItem(R.id.search);
         mSearchView = (SearchView) mSearchMenuItem.getActionView();
 
+        if (mSearchMenuItem == null || mSearchView == null) {
+            return false;
+        }
+
         mSearchMenuItem.setOnActionExpandListener(this);
         mSearchView.setOnQueryTextListener(this);
         mSearchView.setOnCloseListener(this);
@@ -426,7 +420,6 @@
         if (getIntent().hasExtra(EXTRA_UI_OPTIONS)) {
             getWindow().setUiOptions(getIntent().getIntExtra(EXTRA_UI_OPTIONS, 0));
         }
-        Index.getInstance(this).update();
 
         mAuthenticatorHelper = new AuthenticatorHelper();
         mAuthenticatorHelper.updateAuthDescriptions(this);
@@ -450,8 +443,12 @@
 
         mDisplayHomeAsUpEnabled = true;
 
-        String initialFragmentName = getIntent().getStringExtra(EXTRA_SHOW_FRAGMENT);
-        Bundle initialArguments = getIntent().getBundleExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS);
+        // Getting Intent properties can only be done after the super.onCreate(...)
+        final String initialFragmentName = getIntent().getStringExtra(EXTRA_SHOW_FRAGMENT);
+
+        if (initialFragmentName == null) {
+            Index.getInstance(this).update();
+        }
 
         if (savedState != null) {
             // We are restarting from a previous saved state; used that to initialize, instead
@@ -484,6 +481,7 @@
                 mInitialTitle = (initialTitle != null) ? initialTitle : getTitle();
                 setTitle(mInitialTitle);
 
+                Bundle initialArguments = getIntent().getBundleExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS);
                 switchToFragment( initialFragmentName, initialArguments, true, false,
                         mInitialTitle, false);
             } else {
@@ -624,12 +622,15 @@
         mDevelopmentPreferences.registerOnSharedPreferenceChangeListener(
                 mDevelopmentPreferencesListener);
 
-        mHeaderAdapter.resume(this);
         invalidateHeaders();
 
         registerReceiver(mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
 
         mDynamicIndexableContentMonitor.register(this);
+
+        if(!TextUtils.isEmpty(mSearchQuery)) {
+            onQueryTextSubmit(mSearchQuery);
+        }
     }
 
     @Override
@@ -638,8 +639,6 @@
 
         unregisterReceiver(mBatteryInfoReceiver);
 
-        mHeaderAdapter.pause();
-
         mDevelopmentPreferences.unregisterOnSharedPreferenceChangeListener(
                 mDevelopmentPreferencesListener);
 
@@ -1240,7 +1239,10 @@
     @Override
     public boolean onQueryTextChange(String newText) {
         mSearchQuery = newText;
-        return false;
+        if (TextUtils.isEmpty(newText) && mSearchResultsFragment == null) {
+            return false;
+        }
+        return mSearchResultsFragment.onQueryTextChange(newText);
     }
 
     @Override
@@ -1291,226 +1293,8 @@
         mSearchMenuItemExpanded = false;
         getFragmentManager().popBackStackImmediate(SettingsActivity.BACK_STACK_PREFS,
                 FragmentManager.POP_BACK_STACK_INCLUSIVE);
-        mSearchMenuItem.collapseActionView();
-    }
-
-    private static final class DynamicIndexableContentMonitor extends PackageMonitor implements
-            InputManager.InputDeviceListener {
-
-        private static final Intent ACCESSIBILITY_SERVICE_INTENT =
-                new Intent(AccessibilityService.SERVICE_INTERFACE);
-
-        private static final Intent PRINT_SERVICE_INTENT =
-                new Intent(PrintService.SERVICE_INTERFACE);
-
-        private static final Intent IME_SERVICE_INTENT =
-                new Intent("android.view.InputMethod");
-
-        private static final long DELAY_PROCESS_PACKAGE_CHANGE = 2000;
-
-        private static final int MSG_PACKAGE_AVAILABLE = 1;
-        private static final int MSG_PACKAGE_UNAVAILABLE = 2;
-
-        private final List<String> mAccessibilityServices = new ArrayList<String>();
-        private final List<String> mPrintServices = new ArrayList<String>();
-        private final List<String> mImeServices = new ArrayList<String>();
-
-        private final Handler mHandler = new Handler() {
-            @Override
-            public void handleMessage(Message msg) {
-                switch (msg.what) {
-                    case MSG_PACKAGE_AVAILABLE: {
-                        String packageName = (String) msg.obj;
-                        handlePackageAvailable(packageName);
-                    } break;
-
-                    case MSG_PACKAGE_UNAVAILABLE: {
-                        String packageName = (String) msg.obj;
-                        handlePackageUnavailable(packageName);
-                    } break;
-                }
-            }
-        };
-
-        private final ContentObserver mContentObserver = new MyContentObserver(mHandler);
-
-        private Context mContext;
-
-        public void register(Context context) {
-            mContext = context;
-
-            // Cache accessibility service packages to know when they go away.
-            AccessibilityManager accessibilityManager = (AccessibilityManager)
-                    mContext.getSystemService(Context.ACCESSIBILITY_SERVICE);
-            List<AccessibilityServiceInfo> accessibilityServices = accessibilityManager
-                    .getInstalledAccessibilityServiceList();
-            final int accessibilityServiceCount = accessibilityServices.size();
-            for (int i = 0; i < accessibilityServiceCount; i++) {
-                AccessibilityServiceInfo accessibilityService = accessibilityServices.get(i);
-                mAccessibilityServices.add(accessibilityService.getResolveInfo()
-                        .serviceInfo.packageName);
-            }
-
-            // Cache print service packages to know when they go away.
-            PrintManager printManager = (PrintManager)
-                    mContext.getSystemService(Context.PRINT_SERVICE);
-            List<PrintServiceInfo> printServices = printManager.getInstalledPrintServices();
-            final int serviceCount = printServices.size();
-            for (int i = 0; i < serviceCount; i++) {
-                PrintServiceInfo printService = printServices.get(i);
-                mPrintServices.add(printService.getResolveInfo()
-                        .serviceInfo.packageName);
-            }
-
-            // Cache IME service packages to know when they go away.
-            InputMethodManager imeManager = (InputMethodManager)
-                    mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
-            List<InputMethodInfo> inputMethods = imeManager.getInputMethodList();
-            final int inputMethodCount = inputMethods.size();
-            for (int i = 0; i < inputMethodCount; i++) {
-                InputMethodInfo inputMethod = inputMethods.get(i);
-                mImeServices.add(inputMethod.getServiceInfo().packageName);
-            }
-
-            // Watch for related content URIs.
-            mContext.getContentResolver().registerContentObserver(
-                    UserDictionary.Words.CONTENT_URI, true, mContentObserver);
-
-            // Watch for input device changes.
-            InputManager inputManager = (InputManager) context.getSystemService(
-                    Context.INPUT_SERVICE);
-            inputManager.registerInputDeviceListener(this, mHandler);
-
-            // Start tracking packages.
-            register(context, Looper.getMainLooper(), UserHandle.CURRENT, false);
-        }
-
-        public void unregister() {
-            super.unregister();
-
-            InputManager inputManager = (InputManager) mContext.getSystemService(
-                    Context.INPUT_SERVICE);
-            inputManager.unregisterInputDeviceListener(this);
-
-            mContext.getContentResolver().unregisterContentObserver(mContentObserver);
-
-            mAccessibilityServices.clear();
-            mPrintServices.clear();
-            mImeServices.clear();
-        }
-
-        // Covers installed, appeared external storage with the package, upgraded.
-        @Override
-        public void onPackageAppeared(String packageName, int uid) {
-            postMessage(MSG_PACKAGE_AVAILABLE, packageName);
-        }
-
-        // Covers uninstalled, removed external storage with the package.
-        @Override
-        public void onPackageDisappeared(String packageName, int uid) {
-            postMessage(MSG_PACKAGE_UNAVAILABLE, packageName);
-        }
-
-        // Covers enabled, disabled.
-        @Override
-        public void onPackageModified(String packageName) {
-            super.onPackageModified(packageName);
-            final int state = mContext.getPackageManager().getApplicationEnabledSetting(
-                    packageName);
-            if (state == PackageManager.COMPONENT_ENABLED_STATE_DEFAULT
-                    || state ==  PackageManager.COMPONENT_ENABLED_STATE_ENABLED) {
-                postMessage(MSG_PACKAGE_AVAILABLE, packageName);
-            } else {
-                postMessage(MSG_PACKAGE_UNAVAILABLE, packageName);
-            }
-        }
-
-        @Override
-        public void onInputDeviceAdded(int deviceId) {
-            Index.getInstance(mContext).updateFromClassNameResource(
-                    InputMethodAndLanguageSettings.class.getName(), false, true);
-        }
-
-        @Override
-        public void onInputDeviceRemoved(int deviceId) {
-            onInputDeviceChanged(deviceId);
-        }
-
-        @Override
-        public void onInputDeviceChanged(int deviceId) {
-            Index.getInstance(mContext).updateFromClassNameResource(
-                    InputMethodAndLanguageSettings.class.getName(), true, true);
-        }
-
-        private void postMessage(int what, String packageName) {
-            Message message = mHandler.obtainMessage(what, packageName);
-            mHandler.sendMessageDelayed(message, DELAY_PROCESS_PACKAGE_CHANGE);
-        }
-
-        private void handlePackageAvailable(String packageName) {
-            if (!mAccessibilityServices.contains(packageName)) {
-                Intent intent = ACCESSIBILITY_SERVICE_INTENT;
-                intent.setPackage(packageName);
-                if (!mContext.getPackageManager().queryIntentServices(intent, 0).isEmpty()) {
-                    mAccessibilityServices.add(packageName);
-                    Index.getInstance(mContext).updateFromClassNameResource(
-                            AccessibilitySettings.class.getName(), false, true);
-                }
-                intent.setPackage(null);
-            }
-
-            if (!mPrintServices.contains(packageName)) {
-                Intent intent = PRINT_SERVICE_INTENT;
-                intent.setPackage(packageName);
-                if (!mContext.getPackageManager().queryIntentServices(intent, 0).isEmpty()) {
-                    mPrintServices.add(packageName);
-                    Index.getInstance(mContext).updateFromClassNameResource(
-                            PrintSettingsFragment.class.getName(), false, true);
-                }
-                intent.setPackage(null);
-            }
-
-            if (!mImeServices.contains(packageName)) {
-                Intent intent = IME_SERVICE_INTENT;
-                intent.setPackage(packageName);
-                if (!mContext.getPackageManager().queryIntentServices(intent, 0).isEmpty()) {
-                    mImeServices.add(packageName);
-                    Index.getInstance(mContext).updateFromClassNameResource(
-                            InputMethodAndLanguageSettings.class.getName(), false, true);
-                }
-                intent.setPackage(null);
-            }
-        }
-
-        private void handlePackageUnavailable(String packageName) {
-            final int accessibilityIndex = mAccessibilityServices.indexOf(packageName);
-            if (accessibilityIndex >= 0) {
-                mAccessibilityServices.remove(accessibilityIndex);
-                Index.getInstance(mContext).updateFromClassNameResource(
-                        AccessibilitySettings.class.getName(), true, true);
-            }
-
-            final int printIndex = mPrintServices.indexOf(packageName);
-            if (printIndex >= 0) {
-                mPrintServices.remove(printIndex);
-                Index.getInstance(mContext).updateFromClassNameResource(
-                        PrintSettingsFragment.class.getName(), true, true);
-            }
-        }
-
-        private final class MyContentObserver extends ContentObserver {
-
-            public MyContentObserver(Handler handler) {
-                super(handler);
-            }
-
-            @Override
-            public void onChange(boolean selfChange, Uri uri) {
-                if (UserDictionary.Words.CONTENT_URI.equals(uri)) {
-                    Index.getInstance(mContext).updateFromClassNameResource(
-                            InputMethodAndLanguageSettings.class.getName(), true, true);
-                }
-            };
+        if (mSearchMenuItem != null) {
+            mSearchMenuItem.collapseActionView();
         }
     }
 }
diff --git a/src/com/android/settings/SettingsPreferenceFragment.java b/src/com/android/settings/SettingsPreferenceFragment.java
index d575153..f32f8ba 100644
--- a/src/com/android/settings/SettingsPreferenceFragment.java
+++ b/src/com/android/settings/SettingsPreferenceFragment.java
@@ -23,18 +23,22 @@
 import android.content.Context;
 import android.content.DialogInterface;
 import android.content.pm.PackageManager;
+import android.database.DataSetObserver;
+import android.graphics.drawable.Drawable;
 import android.os.Bundle;
 import android.preference.Preference;
 import android.preference.PreferenceFragment;
-import android.preference.PreferenceGroup;
 import android.preference.PreferenceGroupAdapter;
 import android.text.TextUtils;
 import android.util.Log;
 import android.view.Menu;
 import android.view.MenuInflater;
 import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
 import android.widget.Button;
 import android.widget.ListAdapter;
+import android.widget.ListView;
 
 /**
  * Base class for Settings fragments, with some helper functions and dialog management.
@@ -44,7 +48,9 @@
     private static final String TAG = "SettingsPreferenceFragment";
 
     private static final int MENU_HELP = Menu.FIRST + 100;
-    private static final int HIGHLIGHT_DURATION_MILLIS = 750;
+    private static final int DELAY_HIGHLIGHT_DURATION_MILLIS = 400;
+
+    private static final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted";
 
     private SettingsDialogFragment mDialogFragment;
 
@@ -53,10 +59,30 @@
     // Cache the content resolver for async callbacks
     private ContentResolver mContentResolver;
 
+    private String mPreferenceKey;
+    private boolean mPreferenceHighlighted = false;
+
+    private boolean mIsDataSetObserverRegistered = false;
+    private DataSetObserver mDataSetObserver = new DataSetObserver() {
+        @Override
+        public void onChanged() {
+            highlightPreferenceIfNeeded();
+        }
+
+        @Override
+        public void onInvalidated() {
+            highlightPreferenceIfNeeded();
+        }
+    };
+
     @Override
     public void onCreate(Bundle icicle) {
         super.onCreate(icicle);
 
+        if (icicle != null) {
+            mPreferenceHighlighted = icicle.getBoolean(SAVE_HIGHLIGHTED_KEY);
+        }
+
         // Prepare help url and enable menu if necessary
         int helpResource = getHelpResource();
         if (helpResource != 0) {
@@ -65,6 +91,13 @@
     }
 
     @Override
+    public void onSaveInstanceState(Bundle outState) {
+        super.onSaveInstanceState(outState);
+
+        outState.putBoolean(SAVE_HIGHLIGHTED_KEY, mPreferenceHighlighted);
+    }
+
+    @Override
     public void onActivityCreated(Bundle savedInstanceState) {
         super.onActivityCreated(savedInstanceState);
         if (!TextUtils.isEmpty(mHelpUrl)) {
@@ -73,46 +106,141 @@
 
         final Bundle args = getArguments();
         if (args != null) {
-            final String key = args.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
-            final int position = findPositionFromKey(getPreferenceScreen(), key);
-            if (position >= 0) {
-                final ListAdapter adapter = getListView().getAdapter();
-                if (adapter instanceof PreferenceGroupAdapter) {
-                    ((PreferenceGroupAdapter) adapter).setActivated(position);
+            mPreferenceKey = args.getString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY);
+            highlightPreferenceIfNeeded();
+        }
+    }
 
-                    getListView().postDelayed(new Runnable() {
+    @Override
+    protected void onBindPreferences() {
+        if (!mIsDataSetObserverRegistered) {
+            getPreferenceScreen().getRootAdapter().registerDataSetObserver(mDataSetObserver);
+            mIsDataSetObserverRegistered = true;
+        }
+    }
+
+    @Override
+    public void onDestroy() {
+        super.onDestroy();
+
+        if (mIsDataSetObserverRegistered) {
+            getPreferenceScreen().getRootAdapter().unregisterDataSetObserver(mDataSetObserver);
+            mIsDataSetObserverRegistered = false;
+        }
+    }
+
+    public void highlightPreferenceIfNeeded() {
+        if (isAdded() && !mPreferenceHighlighted &&!TextUtils.isEmpty(mPreferenceKey)) {
+            highlightPreference(mPreferenceKey);
+        }
+    }
+
+    private Drawable getHighlightDrawable() {
+        return getResources().getDrawable(R.drawable.preference_highlight);
+    }
+
+    /**
+     * Return a valid ListView position or -1 if none is found
+     */
+    private int canUseListViewForHighLighting(String key) {
+        if (!hasListView()) {
+            return -1;
+        }
+
+        ListView listView = getListView();
+        ListAdapter adapter = listView.getAdapter();
+
+        if (adapter != null && adapter instanceof PreferenceGroupAdapter) {
+            return findListPositionFromKey(adapter, key);
+        }
+
+        return -1;
+    }
+
+    private void highlightPreference(String key) {
+        final Drawable highlight = getHighlightDrawable();
+
+        final int position = canUseListViewForHighLighting(key);
+        if (position >= 0) {
+            final ListView listView = getListView();
+            final ListAdapter adapter = listView.getAdapter();
+
+            ((PreferenceGroupAdapter) adapter).setHighlightedDrawable(highlight);
+            ((PreferenceGroupAdapter) adapter).setHighlighted(position);
+
+            listView.post(new Runnable() {
+                @Override
+                public void run() {
+                    listView.setSelection(position);
+                    listView.postDelayed(new Runnable() {
                         @Override
                         public void run() {
-                            ((PreferenceGroupAdapter) adapter).setActivated(-1);
-                            ((PreferenceGroupAdapter) adapter).notifyDataSetChanged();
+                            final int centerX = listView.getWidth() / 2;
+                            final int centerY = listView.getChildAt(0).getHeight() / 2;
+                            highlight.setHotspot(0, centerX, centerY);
+                            highlight.clearHotspots();
+                            ((PreferenceGroupAdapter) adapter).setHighlighted(-1);
                         }
-                    }, HIGHLIGHT_DURATION_MILLIS);
+                    }, DELAY_HIGHLIGHT_DURATION_MILLIS);
+
+                    mPreferenceHighlighted = true;
                 }
+            });
+        } else {
+            // Try locating the Preference View thru its tag
+            View preferenceView = findPreferenceViewForKey(getView(), key);
+            if (preferenceView != null ) {
+                preferenceView.setBackground(highlight);
+                final int centerX = preferenceView.getWidth() / 2;
+                final int centerY = preferenceView.getHeight() / 2;
+                highlight.setHotspot(0, centerX, centerY);
+                highlight.clearHotspots();
             }
         }
     }
 
-    private int findPositionFromKey(PreferenceGroup group, String key) {
-        if (group != null) {
-            int count = group.getPreferenceCount();
-            for (int n = 0; n < count; n++) {
-                final Preference preference = group.getPreference(n);
+    private int findListPositionFromKey(ListAdapter adapter, String key) {
+        final int count = adapter.getCount();
+        for (int n = 0; n < count; n++) {
+            final Object item = adapter.getItem(n);
+            if (item instanceof Preference) {
+                Preference preference = (Preference) item;
                 final String preferenceKey = preference.getKey();
                 if (preferenceKey != null && preferenceKey.equals(key)) {
                     return n;
                 }
-                if (preference instanceof PreferenceGroup) {
-                    PreferenceGroup nestedGroup = (PreferenceGroup) preference;
-                    final int nestedPosition = findPositionFromKey(nestedGroup, key);
-                    if (nestedPosition >= 0) {
-                        return n + 1 + nestedPosition;
-                    }
-                }
             }
         }
         return -1;
     }
 
+    private View findPreferenceViewForKey(View root, String key) {
+        if (checkTag(root, key)) {
+            return root;
+        }
+        if (root instanceof ViewGroup) {
+            final ViewGroup group = (ViewGroup) root;
+            final int count = group.getChildCount();
+            for (int n = 0; n < count; n++) {
+                final View child = group.getChildAt(n);
+                final View view = findPreferenceViewForKey(child, key);
+                if (view != null) {
+                    return view;
+                }
+            }
+        }
+        return null;
+    }
+
+    private boolean checkTag(View view, String key) {
+        final Object tag = view.getTag();
+        if (tag == null || !(tag instanceof String)) {
+            return false;
+        }
+        final String prefKey = (String) tag;
+        return (!TextUtils.isEmpty(prefKey) && prefKey.equals(key));
+    }
+
     protected void removePreference(String key) {
         Preference pref = findPreference(key);
         if (pref != null) {
diff --git a/src/com/android/settings/SmsDefaultDialog.java b/src/com/android/settings/SmsDefaultDialog.java
index d9a6c5f..3a3848b 100644
--- a/src/com/android/settings/SmsDefaultDialog.java
+++ b/src/com/android/settings/SmsDefaultDialog.java
@@ -64,7 +64,7 @@
 
     private boolean buildDialog(String packageName) {
         TelephonyManager tm = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
-        if (tm.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE) {
+        if (!tm.isSmsCapable()) {
             // No phone, no SMS
             return false;
         }
diff --git a/src/com/android/settings/WirelessSettings.java b/src/com/android/settings/WirelessSettings.java
index 59074e5..b36b03c 100644
--- a/src/com/android/settings/WirelessSettings.java
+++ b/src/com/android/settings/WirelessSettings.java
@@ -256,7 +256,7 @@
 
     private boolean isSmsSupported() {
         // Some tablet has sim card but could not do telephony operations. Skip those.
-        return (mTm.getPhoneType() != TelephonyManager.PHONE_TYPE_NONE);
+        return mTm.isSmsCapable();
     }
 
     @Override
diff --git a/src/com/android/settings/ZenModeSettings.java b/src/com/android/settings/ZenModeSettings.java
deleted file mode 100644
index 51b43fd..0000000
--- a/src/com/android/settings/ZenModeSettings.java
+++ /dev/null
@@ -1,355 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings;
-
-import android.app.ActionBar;
-import android.app.Activity;
-import android.content.Context;
-import android.database.ContentObserver;
-import android.content.res.Resources;
-import android.graphics.Typeface;
-import android.graphics.drawable.Drawable;
-import android.net.Uri;
-import android.os.AsyncTask;
-import android.os.Bundle;
-import android.os.Handler;
-import android.provider.Settings.Global;
-import android.util.Log;
-import android.util.TypedValue;
-import android.view.Gravity;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuInflater;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.CompoundButton;
-import android.widget.CompoundButton.OnCheckedChangeListener;
-import android.widget.LinearLayout;
-import android.widget.RelativeLayout;
-import android.widget.ScrollView;
-import android.widget.Switch;
-import android.widget.TextView;
-import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
-import com.android.settings.search.SearchIndexableRaw;
-
-import java.util.ArrayList;
-import java.util.List;
-
-public class ZenModeSettings extends SettingsPreferenceFragment implements Indexable {
-    private static final String TAG = "ZenModeSettings";
-    private static final boolean DEBUG = false;
-
-    private final Handler mHandler = new Handler();
-    private final SettingsObserver mSettingsObserver = new SettingsObserver();
-
-    private ZenModeConfigView mConfig;
-    private Switch mSwitch;
-    private Activity mActivity;
-    private MenuItem mSearch;
-
-    @Override
-    public void onCreate(Bundle icicle) {
-        super.onCreate(icicle);
-        mActivity = getActivity();
-        mSwitch = new Switch(mActivity);
-        final int p = getResources().getDimensionPixelSize(R.dimen.content_margin_left);
-        mSwitch.setPadding(0, 0, p, 0);
-        setHasOptionsMenu(true);
-    }
-
-    @Override
-    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
-        super.onCreateOptionsMenu(menu, inflater);
-        mSearch = menu.findItem(R.id.search);
-        if (mSearch != null) mSearch.setVisible(false);
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
-        updateState();
-        mSettingsObserver.register();
-        mActivity.getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
-                ActionBar.DISPLAY_SHOW_CUSTOM);
-        mActivity.getActionBar().setCustomView(mSwitch, new ActionBar.LayoutParams(
-                ActionBar.LayoutParams.WRAP_CONTENT,
-                ActionBar.LayoutParams.WRAP_CONTENT,
-                Gravity.CENTER_VERTICAL | Gravity.END));
-        if (mSearch != null) mSearch.setVisible(false);
-    }
-
-    @Override
-    public void onPause() {
-        super.onPause();
-        mSettingsObserver.unregister();
-        mActivity.getActionBar().setDisplayOptions(0, ActionBar.DISPLAY_SHOW_CUSTOM);
-        if (mSearch != null) mSearch.setVisible(true);
-    }
-
-    private final class SettingsObserver extends ContentObserver {
-        private final Uri ZEN_MODE_URI = Global.getUriFor(Global.ZEN_MODE);
-
-        public SettingsObserver() {
-            super(mHandler);
-        }
-
-        public void register() {
-            getContentResolver().registerContentObserver(ZEN_MODE_URI, false, this);
-        }
-
-        public void unregister() {
-            getContentResolver().unregisterContentObserver(this);
-        }
-
-        @Override
-        public void onChange(boolean selfChange, Uri uri) {
-            super.onChange(selfChange, uri);
-            if (ZEN_MODE_URI.equals(uri)) {
-                updateState();
-            }
-        }
-    };
-
-    private void updateState() {
-        mSwitch.setOnCheckedChangeListener(null);
-        final boolean zenMode = Global.getInt(getContentResolver(),
-                Global.ZEN_MODE, Global.ZEN_MODE_OFF) != Global.ZEN_MODE_OFF;
-        mSwitch.setChecked(zenMode);
-        mSwitch.setOnCheckedChangeListener(mSwitchListener);
-    }
-
-    @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container,
-            Bundle savedInstanceState) {
-        final Context context = getActivity();
-        final ScrollView sv = new ScrollView(context);
-        sv.setVerticalScrollBarEnabled(false);
-        sv.setHorizontalScrollBarEnabled(false);
-        mConfig = new ZenModeConfigView(context);
-        sv.addView(mConfig);
-        return sv;
-    }
-
-    @Override
-    public void onDestroyView() {
-        super.onDestroyView();
-        mConfig.resetBackground();
-    }
-
-    private final OnCheckedChangeListener mSwitchListener = new OnCheckedChangeListener() {
-        @Override
-        public void onCheckedChanged(CompoundButton buttonView, final boolean isChecked) {
-            AsyncTask.execute(new Runnable() {
-                @Override
-                public void run() {
-                    final int v = isChecked ? Global.ZEN_MODE_ON : Global.ZEN_MODE_OFF;
-                    Global.putInt(getContentResolver(), Global.ZEN_MODE, v);
-                }
-            });
-        }
-    };
-
-    public static final class ZenModeConfigView extends LinearLayout {
-        private static final Typeface LIGHT =
-                Typeface.create("sans-serif-light", Typeface.NORMAL);
-        private static final int BG_COLOR = 0xffe7e8e9;
-        private final Context mContext;
-
-        private Drawable mOldBackground;
-
-        public ZenModeConfigView(Context context) {
-            super(context);
-            mContext = context;
-            setOrientation(VERTICAL);
-
-            int p = getResources().getDimensionPixelSize(R.dimen.content_margin_left);
-            TextView tv = addHeader("When on");
-            tv.setPadding(0, p / 2, 0, p / 4);
-            addBuckets();
-            tv = addHeader("Automatically turn on");
-            tv.setPadding(0, p / 2, 0, p / 4);
-            addTriggers();
-        }
-
-        @Override
-        protected void onAttachedToWindow() {
-            super.onAttachedToWindow();
-            mOldBackground = getParentView().getBackground();
-            if (DEBUG) Log.d(TAG, "onAttachedToWindow mOldBackground=" + mOldBackground);
-            getParentView().setBackgroundColor(BG_COLOR);
-        }
-
-        public void resetBackground() {
-            if (DEBUG) Log.d(TAG, "resetBackground");
-            getParentView().setBackground(mOldBackground);
-        }
-
-        private View getParentView() {
-            return (View)getParent().getParent();
-        }
-
-        private TextView addHeader(String text) {
-            TextView tv = new TextView(mContext);
-            tv.setTypeface(LIGHT);
-            tv.setTextColor(0x7f000000);
-            tv.setTextSize(TypedValue.COMPLEX_UNIT_PX, tv.getTextSize() * 1.5f);
-            tv.setText(text);
-            addView(tv);
-            return tv;
-        }
-
-        private void addTriggers() {
-            addView(new TriggerView("Never"));
-        }
-
-        private void addBuckets() {
-            LayoutParams lp = new LayoutParams(LayoutParams.MATCH_PARENT,
-                    LayoutParams.WRAP_CONTENT);
-            BucketView callView = new BucketView("Phone calls", 0,
-                    "Block all", "Block all except...", "Allow all");
-            addView(callView, lp);
-            lp.topMargin = 4;
-            BucketView msgView = new BucketView("Texts, SMS, & other calls", 0,
-                    "Block all", "Block all except...", "Allow all");
-            addView(msgView, lp);
-            BucketView alarmView = new BucketView("Alarms & timers", 2,
-                    "Block all", "Block all except...", "Allow all");
-            addView(alarmView, lp);
-            BucketView otherView = new BucketView("Other interruptions", 0,
-                    "Block all", "Block all except...", "Allow all");
-            addView(otherView, lp);
-        }
-
-        private class BucketView extends RelativeLayout {
-            public BucketView(String category, int defaultValue, String... values) {
-                super(ZenModeConfigView.this.mContext);
-
-                setBackgroundColor(0xffffffff);
-                final int p = getResources().getDimensionPixelSize(R.dimen.content_margin_left);
-                final int lm = p * 3 / 4;
-                TextView title = new TextView(mContext);
-                title.setId(android.R.id.title);
-                title.setTextColor(0xff000000);
-                title.setTypeface(LIGHT);
-                title.setText(category);
-                title.setTextSize(TypedValue.COMPLEX_UNIT_PX, title.getTextSize() * 1.5f);
-                LayoutParams lp =
-                        new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
-                lp.topMargin = p / 2;
-                lp.leftMargin = lm;
-                addView(title, lp);
-
-                TextView subtitle = new TextView(mContext);
-                subtitle.setTextColor(0xff000000);
-                subtitle.setTypeface(LIGHT);
-                subtitle.setText(values[defaultValue]);
-                lp = new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
-                lp.addRule(BELOW, title.getId());
-                lp.leftMargin = lm;
-                lp.bottomMargin = p / 2;
-                addView(subtitle, lp);
-            }
-        }
-
-        private class TriggerView extends RelativeLayout {
-            public TriggerView(String text) {
-                super(ZenModeConfigView.this.mContext);
-
-                setBackgroundColor(0xffffffff);
-                final int p = getResources().getDimensionPixelSize(R.dimen.content_margin_left);
-
-                final TextView tv = new TextView(mContext);
-                tv.setText(text);
-                tv.setTypeface(LIGHT);
-                tv.setTextColor(0xff000000);
-                tv.setTextSize(TypedValue.COMPLEX_UNIT_PX, tv.getTextSize() * 1.5f);
-                LayoutParams lp =
-                        new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
-                lp.addRule(CENTER_VERTICAL);
-                lp.bottomMargin = p / 2;
-                lp.topMargin = p / 2;
-                lp.leftMargin = p * 3 / 4;
-                addView(tv, lp);
-            }
-        }
-    }
-
-    // Enable indexing of searchable data
-    public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
-        new BaseSearchIndexProvider() {
-            @Override
-            public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) {
-                final List<SearchIndexableRaw> result = new ArrayList<SearchIndexableRaw>();
-                final Resources res = context.getResources();
-
-                SearchIndexableRaw data = new SearchIndexableRaw(context);
-                data.title = res.getString(R.string.zen_mode_settings_title);
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "When on";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "Calls";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "Text & SMS Messages";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "Alarms & Timers";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "Other Interruptions";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "Automatically turn on";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "While driving";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "While in meetings";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                data = new SearchIndexableRaw(context);
-                data.title = "During a set time period";
-                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
-                result.add(data);
-
-                return result;
-            }
-        };
-
-}
diff --git a/src/com/android/settings/accessibility/AccessibilitySettings.java b/src/com/android/settings/accessibility/AccessibilitySettings.java
index 1144985..9aa822e 100644
--- a/src/com/android/settings/accessibility/AccessibilitySettings.java
+++ b/src/com/android/settings/accessibility/AccessibilitySettings.java
@@ -590,13 +590,22 @@
             String screenTitle = context.getResources().getString(
                     R.string.accessibility_services_title);
 
-            // Indexing all services, reagardles if enabled.
+            // Indexing all services, regardless if enabled.
             List<AccessibilityServiceInfo> services = accessibilityManager
                     .getInstalledAccessibilityServiceList();
             final int serviceCount = services.size();
             for (int i = 0; i < serviceCount; i++) {
                 AccessibilityServiceInfo service = services.get(i);
+                if (service == null || service.getResolveInfo() == null) {
+                    continue;
+                }
+
+                ServiceInfo serviceInfo = service.getResolveInfo().serviceInfo;
+                ComponentName componentName = new ComponentName(serviceInfo.packageName,
+                        serviceInfo.name);
+
                 SearchIndexableRaw indexable = new SearchIndexableRaw(context);
+                indexable.key = componentName.flattenToString();
                 indexable.title = service.getResolveInfo().loadLabel(packageManager).toString();
                 indexable.summaryOn = context.getString(R.string.accessibility_feature_state_on);
                 indexable.summaryOff = context.getString(R.string.accessibility_feature_state_off);
diff --git a/src/com/android/settings/accessibility/CaptionPropertiesFragment.java b/src/com/android/settings/accessibility/CaptionPropertiesFragment.java
index 49e31cf..810b8b5 100644
--- a/src/com/android/settings/accessibility/CaptionPropertiesFragment.java
+++ b/src/com/android/settings/accessibility/CaptionPropertiesFragment.java
@@ -129,11 +129,14 @@
         mPreviewText = (SubtitleView) view.findViewById(R.id.preview_text);
         mPreviewText.setVisibility(enabled ? View.VISIBLE : View.INVISIBLE);
 
-        final Context context = view.getContext();
+        final Context context = getActivity().getActionBar().getThemedContext();
         final int padding = context.getResources().getDimensionPixelSize(
                 R.dimen.action_bar_switch_padding);
         mToggleSwitch = new ToggleSwitch(context);
         mToggleSwitch.setPaddingRelative(0, 0, padding, 0);
+        mToggleSwitch.setLayoutParams(new ActionBar.LayoutParams(
+                ActionBar.LayoutParams.WRAP_CONTENT, ActionBar.LayoutParams.WRAP_CONTENT,
+                Gravity.CENTER_VERTICAL | Gravity.END));
         mToggleSwitch.setCheckedInternal(enabled);
 
         mPreviewWindow = view.findViewById(R.id.preview_window);
@@ -220,11 +223,8 @@
 
     private void installActionBarToggleSwitch() {
         final ActionBar ab = getActivity().getActionBar();
-        final ActionBar.LayoutParams params = new ActionBar.LayoutParams(
-                ActionBar.LayoutParams.WRAP_CONTENT, ActionBar.LayoutParams.WRAP_CONTENT,
-                        Gravity.CENTER_VERTICAL | Gravity.END);
         ab.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM, ActionBar.DISPLAY_SHOW_CUSTOM);
-        ab.setCustomView(mToggleSwitch, params);
+        ab.setCustomView(mToggleSwitch);
 
         onInstallActionBarToggleSwitch();
     }
diff --git a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
index 03f9072..a6901ad 100644
--- a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
@@ -88,11 +88,14 @@
     public void onViewCreated(View view, Bundle savedInstanceState) {
         super.onViewCreated(view, savedInstanceState);
 
-        final Context context = view.getContext();
+        final Context context = getActivity().getActionBar().getThemedContext();
         final int padding = context.getResources().getDimensionPixelSize(
                 R.dimen.action_bar_switch_padding);
         mToggleSwitch = new ToggleSwitch(context);
         mToggleSwitch.setPaddingRelative(0, 0, padding, 0);
+        mToggleSwitch.setLayoutParams(new ActionBar.LayoutParams(
+                ActionBar.LayoutParams.WRAP_CONTENT, ActionBar.LayoutParams.WRAP_CONTENT,
+                Gravity.CENTER_VERTICAL | Gravity.END));
 
         onProcessArguments(getArguments());
     }
@@ -127,11 +130,8 @@
 
     private void installActionBarToggleSwitch() {
         final ActionBar ab = getActivity().getActionBar();
-        final ActionBar.LayoutParams params = new ActionBar.LayoutParams(
-                ActionBar.LayoutParams.WRAP_CONTENT, ActionBar.LayoutParams.WRAP_CONTENT,
-                Gravity.CENTER_VERTICAL | Gravity.END);
         ab.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM, ActionBar.DISPLAY_SHOW_CUSTOM);
-        ab.setCustomView(mToggleSwitch, params);
+        ab.setCustomView(mToggleSwitch);
 
         onInstallActionBarToggleSwitch();
     }
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index b1145a1..ef27e2e 100755
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -366,11 +366,28 @@
                 mUninstallButton.setText(R.string.uninstall_text);
             }
         }
-        // If this is a device admin, it can't be uninstall or disabled.
+        // If this is a device admin, it can't be uninstalled or disabled.
         // We do this here so the text of the button is still set correctly.
         if (mDpm.packageHasActiveAdmins(mPackageInfo.packageName)) {
             enabled = false;
         }
+
+        // If this is the default (or only) home app, suppress uninstall (even if
+        // we still think it should be allowed for other reasons)
+        if (enabled && mHomePackages.contains(mPackageInfo.packageName)) {
+            ArrayList<ResolveInfo> homeActivities = new ArrayList<ResolveInfo>();
+            ComponentName currentDefaultHome  = mPm.getHomeActivities(homeActivities);
+            if (currentDefaultHome == null) {
+                // No preferred default, so permit uninstall only when
+                // there is more than one candidate
+                enabled = (mHomePackages.size() > 1);
+            } else {
+                // There is an explicit default home app -- forbid uninstall of
+                // that one, but permit it for installed-but-inactive ones.
+                enabled = !mPackageInfo.packageName.equals(currentDefaultHome.getPackageName());
+            }
+        }
+
         mUninstallButton.setEnabled(enabled);
         if (enabled) {
             // Register listener
diff --git a/src/com/android/settings/bluetooth/BluetoothEnabler.java b/src/com/android/settings/bluetooth/BluetoothEnabler.java
index 70a8097..1907cd1 100644
--- a/src/com/android/settings/bluetooth/BluetoothEnabler.java
+++ b/src/com/android/settings/bluetooth/BluetoothEnabler.java
@@ -21,6 +21,8 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
+import android.os.Handler;
+import android.os.Message;
 import android.provider.Settings;
 import android.widget.CompoundButton;
 import android.widget.Switch;
@@ -42,6 +44,22 @@
     private final LocalBluetoothAdapter mLocalAdapter;
     private final IntentFilter mIntentFilter;
 
+    private static final String EVENT_DATA_IS_BT_ON = "is_bluetooth_on";
+    private static final int EVENT_UPDATE_INDEX = 0;
+
+    private Handler mHandler = new Handler() {
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case EVENT_UPDATE_INDEX:
+                    final boolean isBluetoothOn = msg.getData().getBoolean(EVENT_DATA_IS_BT_ON);
+                    Index.getInstance(mContext).updateFromClassNameResource(
+                            BluetoothSettings.class.getName(), true, isBluetoothOn);
+                    break;
+            }
+        }
+    };
+
     private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
         @Override
         public void onReceive(Context context, Intent intent) {
@@ -165,7 +183,11 @@
     }
 
     private void updateSearchIndex(boolean isBluetoothOn) {
-        Index.getInstance(mContext).updateFromClassNameResource(
-                BluetoothSettings.class.getName(), false, isBluetoothOn);
+        mHandler.removeMessages(EVENT_UPDATE_INDEX);
+
+        Message msg = new Message();
+        msg.what = EVENT_UPDATE_INDEX;
+        msg.getData().putBoolean(EVENT_DATA_IS_BT_ON, isBluetoothOn);
+        mHandler.sendMessage(msg);
     }
 }
diff --git a/src/com/android/settings/bluetooth/BluetoothSettings.java b/src/com/android/settings/bluetooth/BluetoothSettings.java
index b707e7b..b505a3f 100755
--- a/src/com/android/settings/bluetooth/BluetoothSettings.java
+++ b/src/com/android/settings/bluetooth/BluetoothSettings.java
@@ -117,7 +117,7 @@
         final Activity activity = getActivity();
         final int padding = activity.getResources().getDimensionPixelSize(
                 R.dimen.action_bar_switch_padding);
-        mSwitch = new Switch(activity);
+        mSwitch = new Switch(activity.getActionBar().getThemedContext());
         mSwitch.setPaddingRelative(0, 0, padding, 0);
 
         mBluetoothEnabler = new BluetoothEnabler(activity, mSwitch);
diff --git a/src/com/android/settings/dashboard/HeaderAdapter.java b/src/com/android/settings/dashboard/HeaderAdapter.java
index 720f83b..2f79c18 100644
--- a/src/com/android/settings/dashboard/HeaderAdapter.java
+++ b/src/com/android/settings/dashboard/HeaderAdapter.java
@@ -262,14 +262,4 @@
         holder.mIcon.setLayoutParams(lp);
         holder.mIcon.setImageDrawable(icon);
     }
-
-    public void resume(Context context) {
-        mWifiEnabler.resume(context);
-        mBluetoothEnabler.resume(context);
-    }
-
-    public void pause() {
-        mWifiEnabler.pause();
-        mBluetoothEnabler.pause();
-    }
 }
\ No newline at end of file
diff --git a/src/com/android/settings/dashboard/SearchResultsSummary.java b/src/com/android/settings/dashboard/SearchResultsSummary.java
index e78c7a0..a7076ea 100644
--- a/src/com/android/settings/dashboard/SearchResultsSummary.java
+++ b/src/com/android/settings/dashboard/SearchResultsSummary.java
@@ -18,14 +18,17 @@
 
 import android.app.Fragment;
 import android.content.ComponentName;
+import android.content.ContentValues;
 import android.content.Context;
 import android.content.Intent;
 import android.content.pm.PackageManager;
 import android.content.res.Resources;
 import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
 import android.graphics.drawable.Drawable;
 import android.os.AsyncTask;
 import android.os.Bundle;
+import android.os.Handler;
 import android.text.TextUtils;
 import android.util.Log;
 import android.view.LayoutInflater;
@@ -39,9 +42,14 @@
 import com.android.settings.R;
 import com.android.settings.SettingsActivity;
 import com.android.settings.search.Index;
+import com.android.settings.search.IndexDatabaseHelper;
 
+import java.util.Date;
 import java.util.HashMap;
 
+import static com.android.settings.search.IndexDatabaseHelper.SavedQueriesColums;
+import static com.android.settings.search.IndexDatabaseHelper.Tables;
+
 public class SearchResultsSummary extends Fragment {
 
     private static final String LOG_TAG = "SearchResultsSummary";
@@ -53,6 +61,10 @@
     private SearchResultsAdapter mAdapter;
     private UpdateSearchResultsTask mUpdateSearchResultsTask;
 
+    private String mQuery;
+    private SaveSearchQueryTask mSaveSearchQueryTask;
+
+    private static long MAX_SAVED_SEARCH_QUERY = 5;
 
     /**
      * A basic AsyncTask for updating the query results cursor
@@ -73,6 +85,41 @@
         }
     }
 
+    /**
+     * A basic AsynTask for saving the Search query into the database
+     */
+    private class SaveSearchQueryTask extends AsyncTask<String, Void, Long> {
+
+        @Override
+        protected Long doInBackground(String... params) {
+            final long now = new Date().getTime();
+
+            final ContentValues values = new ContentValues();
+            values.put(SavedQueriesColums.QUERY, params[0]);
+            values.put(SavedQueriesColums.TIME_STAMP, now);
+
+            SQLiteDatabase database = IndexDatabaseHelper.getInstance(
+                    getActivity()).getWritableDatabase();
+
+            long lastInsertedRowId = -1;
+            try {
+                lastInsertedRowId =
+                        database.insert(Tables.TABLE_SAVED_QUERIES, null, values);
+
+                final long delta = lastInsertedRowId - MAX_SAVED_SEARCH_QUERY;
+                if (delta > 0) {
+                    int count = database.delete(Tables.TABLE_SAVED_QUERIES, "rowId <= ?",
+                            new String[] { Long.toString(delta) });
+                    Log.d(LOG_TAG, "Deleted '" + count + "' saved Search query(ies)");
+                }
+            } catch (Exception e) {
+                Log.d(LOG_TAG, "Cannot update saved Search queries", e);
+            }
+
+            return lastInsertedRowId;
+        }
+    }
+
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -140,17 +187,35 @@
 
                     sa.startActivity(intent);
                 }
+
+                saveQueryToDatabase();
             }
         });
 
         return view;
     }
 
+    private void saveQueryToDatabase() {
+        if (mSaveSearchQueryTask != null) {
+            mSaveSearchQueryTask.cancel(false);
+            mSaveSearchQueryTask = null;
+        }
+        if (!TextUtils.isEmpty(mQuery)) {
+            mSaveSearchQueryTask = new SaveSearchQueryTask();
+            mSaveSearchQueryTask.execute(mQuery);
+        }
+    }
+
     public boolean onQueryTextSubmit(String query) {
         updateSearchResults(query);
         return true;
     }
 
+    public boolean onQueryTextChange(String query) {
+        updateSearchResults(query);
+        return true;
+    }
+
     public boolean onClose() {
         clearResults();
         return false;
@@ -191,12 +256,12 @@
             mUpdateSearchResultsTask.cancel(false);
             mUpdateSearchResultsTask = null;
         }
-        final String query = getFilteredQueryString(cs);
-        if (TextUtils.isEmpty(query)) {
+        mQuery = getFilteredQueryString(cs);
+        if (TextUtils.isEmpty(mQuery)) {
             setCursor(null);
         } else {
             mUpdateSearchResultsTask = new UpdateSearchResultsTask();
-            mUpdateSearchResultsTask.execute(query);
+            mUpdateSearchResultsTask.execute(mQuery);
         }
     }
 
@@ -342,12 +407,18 @@
                     !summaryOn.contains(PERCENT_RECLACE) && !summaryOn.contains(DOLLAR_REPLACE)) {
                 sb.append(summaryOn);
                 sb.append(ELLIPSIS);
-            }
-            if (!TextUtils.isEmpty(entries)) {
-                sb.append(" \n ");
-                sb.append(entries);
+            } else if (!TextUtils.isEmpty(entries)) {
+                final int index  = entries.indexOf(Index.ENTRIES_SEPARATOR);
+                if (index > 0) {
+                    final String firstEntriesValue = entries.substring(0, index);
+                    sb.append(firstEntriesValue);
+                } else {
+                    sb.append(entries);
+                }
+                sb.append(ELLIPSIS);
             }
             textSummary.setText(sb.toString());
+
             if (result.iconResId != R.drawable.empty_icon) {
                 final Context packageContext = result.context;
                 final Drawable drawable;
diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
index c0e930e..bc8d920 100644
--- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
+++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java
@@ -16,6 +16,8 @@
 
 package com.android.settings.inputmethod;
 
+import android.content.ComponentName;
+import android.content.pm.ServiceInfo;
 import com.android.settings.R;
 import com.android.settings.Settings.KeyboardLayoutPickerActivity;
 import com.android.settings.Settings.SpellCheckersSettingsActivity;
@@ -645,6 +647,7 @@
             if (context.getAssets().getLocales().length > 1) {
                 String localeName = getLocaleName(resources);
                 SearchIndexableRaw indexable = new SearchIndexableRaw(context);
+                indexable.key = "phone_language";
                 indexable.title = context.getString(R.string.phone_language);
                 indexable.summaryOn = localeName;
                 indexable.summaryOff = localeName;
@@ -654,6 +657,7 @@
 
             // Spell checker.
             SearchIndexableRaw indexable = new SearchIndexableRaw(context);
+            indexable.key = "spellcheckers_settings";
             indexable.title = context.getString(R.string.spellcheckers_settings_title);
             indexable.screenTitle = screenTitle;
             indexables.add(indexable);
@@ -661,6 +665,7 @@
             // User dictionary.
             if (UserDictionaryList.getUserDictionaryLocalesSet(context) != null) {
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = "user_dict_settings";
                 indexable.title = context.getString(R.string.user_dict_settings_title);
                 indexable.screenTitle = screenTitle;
                 indexables.add(indexable);
@@ -668,6 +673,7 @@
 
             // Keyboard settings.
             indexable = new SearchIndexableRaw(context);
+            indexable.key = "keyboard_settings";
             indexable.title = context.getString(R.string.keyboard_settings_category);
             indexable.screenTitle = screenTitle;
             indexables.add(indexable);
@@ -679,6 +685,7 @@
             // Current IME.
             String currImeName = immValues.getCurrentInputMethodName(context).toString();
             indexable = new SearchIndexableRaw(context);
+            indexable.key = "current_input_method";
             indexable.title = context.getString(R.string.current_input_method);
             indexable.summaryOn = currImeName;
             indexable.summaryOff = currImeName;
@@ -710,7 +717,12 @@
                 }
                 String summary = builder.toString();
 
+                ServiceInfo serviceInfo = inputMethod.getServiceInfo();
+                ComponentName componentName = new ComponentName(serviceInfo.packageName,
+                        serviceInfo.name);
+
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = componentName.flattenToString();
                 indexable.title = inputMethod.loadLabel(context.getPackageManager()).toString();
                 indexable.summaryOn = summary;
                 indexable.summaryOff = summary;
@@ -747,6 +759,7 @@
                     }
 
                     indexable = new SearchIndexableRaw(context);
+                    indexable.key = device.getName();
                     indexable.title = device.getName();
                     indexable.summaryOn = summary;
                     indexable.summaryOff = summary;
@@ -757,6 +770,7 @@
                 if (hasHardKeyboards) {
                     // Hard keyboard category.
                     indexable = new SearchIndexableRaw(context);
+                    indexable.key = "builtin_keyboard_settings";
                     indexable.title = context.getString(
                             R.string.builtin_keyboard_settings_title);
                     indexable.screenTitle = screenTitle;
@@ -764,6 +778,7 @@
 
                     // Auto replace.
                     indexable = new SearchIndexableRaw(context);
+                    indexable.key = "auto_replace";
                     indexable.title = context.getString(R.string.auto_replace);
                     indexable.summaryOn = context.getString(R.string.auto_replace_summary);
                     indexable.summaryOff = context.getString(R.string.auto_replace_summary);
@@ -772,6 +787,7 @@
 
                     // Auto caps.
                     indexable = new SearchIndexableRaw(context);
+                    indexable.key = "auto_caps";
                     indexable.title = context.getString(R.string.auto_caps);
                     indexable.summaryOn = context.getString(R.string.auto_caps_summary);
                     indexable.summaryOff = context.getString(R.string.auto_caps_summary);
@@ -780,6 +796,7 @@
 
                     // Auto punctuate.
                     indexable = new SearchIndexableRaw(context);
+                    indexable.key = "auto_punctuate";
                     indexable.title = context.getString(R.string.auto_punctuate);
                     indexable.summaryOn = context.getString(R.string.auto_punctuate_summary);
                     indexable.summaryOff = context.getString(R.string.auto_punctuate_summary);
@@ -798,6 +815,7 @@
             // Recognizer settings.
             if (recognizerCount > 0) {
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = "recognizer_settings";
                 indexable.title = context.getString(R.string.recognizer_settings_title);
                 indexable.screenTitle = screenTitle;
                 indexables.add(indexable);
@@ -806,6 +824,7 @@
             if (recognizerCount > 1) {
                 // Recognizer chooser.
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = "recognizer_title";
                 indexable.title = context.getString(R.string.recognizer_title);
                 indexable.screenTitle = screenTitle;
                 indexables.add(indexable);
@@ -813,7 +832,13 @@
 
             for (int i = 0; i < recognizerCount; i++) {
                 ResolveInfo recognizer = recognizers.get(i);
+
+                ServiceInfo serviceInfo = recognizer.serviceInfo;
+                ComponentName componentName = new ComponentName(serviceInfo.packageName,
+                        serviceInfo.name);
+
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = componentName.flattenToString();
                 indexable.title = recognizer.loadLabel(context.getPackageManager()).toString();
                 indexable.screenTitle = screenTitle;
                 indexables.add(indexable);
@@ -823,6 +848,7 @@
             TtsEngines ttsEngines = new TtsEngines(context);
             if (!ttsEngines.getEngines().isEmpty()) {
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = "tts_settings";
                 indexable.title = context.getString(R.string.tts_settings_title);
                 indexable.screenTitle = screenTitle;
                 indexables.add(indexable);
@@ -830,11 +856,13 @@
 
             // Pointer settings.
             indexable = new SearchIndexableRaw(context);
+            indexable.key = "pointer_settings_category";
             indexable.title = context.getString(R.string.pointer_settings_category);
             indexable.screenTitle = screenTitle;
             indexables.add(indexable);
 
             indexable = new SearchIndexableRaw(context);
+            indexable.key = "pointer_speed";
             indexable.title = context.getString(R.string.pointer_speed);
             indexable.screenTitle = screenTitle;
             indexables.add(indexable);
@@ -842,6 +870,7 @@
             // Game controllers.
             if (haveInputDeviceWithVibrator()) {
                 indexable = new SearchIndexableRaw(context);
+                indexable.key = "vibrate_input_devices";
                 indexable.title = context.getString(R.string.vibrate_input_devices);
                 indexable.summaryOn = context.getString(R.string.vibrate_input_devices_summary);
                 indexable.summaryOff = context.getString(R.string.vibrate_input_devices_summary);
diff --git a/src/com/android/settings/location/LocationSettings.java b/src/com/android/settings/location/LocationSettings.java
index d862fd7..1549bbd 100644
--- a/src/com/android/settings/location/LocationSettings.java
+++ b/src/com/android/settings/location/LocationSettings.java
@@ -73,7 +73,7 @@
 
         final Activity activity = getActivity();
 
-        mSwitch = new Switch(activity);
+        mSwitch = new Switch(activity.getActionBar().getThemedContext());
         final int padding = activity.getResources().getDimensionPixelSize(
                 R.dimen.action_bar_switch_padding);
         mSwitch.setPaddingRelative(0, 0, padding, 0);
diff --git a/src/com/android/settings/nfc/AndroidBeam.java b/src/com/android/settings/nfc/AndroidBeam.java
index b3cd9c2..f289550 100644
--- a/src/com/android/settings/nfc/AndroidBeam.java
+++ b/src/com/android/settings/nfc/AndroidBeam.java
@@ -42,7 +42,7 @@
         super.onCreate(savedInstanceState);
         Activity activity = getActivity();
 
-        mActionBarSwitch = new Switch(activity);
+        mActionBarSwitch = new Switch(activity.getActionBar().getThemedContext());
 
         if (activity instanceof SettingsActivity) {
             final int padding = activity.getResources().getDimensionPixelSize(
diff --git a/src/com/android/settings/notification/AppNotificationSettings.java b/src/com/android/settings/notification/AppNotificationSettings.java
new file mode 100644
index 0000000..172557d
--- /dev/null
+++ b/src/com/android/settings/notification/AppNotificationSettings.java
@@ -0,0 +1,550 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification;
+
+import android.animation.LayoutTransition;
+import android.app.AlertDialog;
+import android.app.INotificationManager;
+import android.app.ListFragment;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.ActivityInfo;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
+import android.content.pm.ResolveInfo;
+import android.content.pm.Signature;
+import android.graphics.Paint;
+import android.graphics.Path;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.ShapeDrawable;
+import android.graphics.drawable.shapes.PathShape;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Parcelable;
+import android.os.ServiceManager;
+import android.os.SystemClock;
+import android.util.ArrayMap;
+import android.util.Log;
+import android.util.TypedValue;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewGroup;
+import android.widget.ArrayAdapter;
+import android.widget.CheckBox;
+import android.widget.CompoundButton;
+import android.widget.CompoundButton.OnCheckedChangeListener;
+import android.widget.ImageView;
+import android.widget.RelativeLayout;
+import android.widget.SectionIndexer;
+import android.widget.TextView;
+
+import com.android.settings.R;
+
+import java.text.Collator;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+
+public class AppNotificationSettings extends ListFragment {
+    private static final String TAG = "AppNotificationSettings";
+    private static final boolean DEBUG = true;
+
+    private static final String SECTION_BEFORE_A = "*";
+    private static final String SECTION_AFTER_Z = "**";
+    private static final Intent APP_NOTIFICATION_PREFS_CATEGORY_INTENT
+            = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_NOTIFICATION_PREFERENCES);
+
+    private final Handler mHandler = new Handler();
+    private final ArrayMap<String, AppRow> mRows = new ArrayMap<String, AppRow>();
+    private final ArrayList<AppRow> mSortedRows = new ArrayList<AppRow>();
+    private final ArrayList<String> mSections = new ArrayList<String>();
+
+    private Context mContext;
+    private LayoutInflater mInflater;
+    private NotificationAppAdapter mAdapter;
+    private Signature[] mSystemSignature;
+    private Parcelable mListViewState;
+    private Backend mBackend = new Backend();
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        mContext = getActivity();
+        mInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+        mAdapter = new NotificationAppAdapter(mContext);
+        getActivity().setTitle(R.string.app_notifications_title);
+    }
+
+    public View onCreateView(LayoutInflater inflater, ViewGroup container,
+            Bundle savedInstanceState) {
+        return inflater.inflate(R.layout.notification_app_list, container, false);
+    }
+
+    @Override
+    public void onActivityCreated(Bundle savedInstanceState) {
+        super.onActivityCreated(savedInstanceState);
+        repositionScrollbar();
+        getListView().setAdapter(mAdapter);
+    }
+
+    @Override
+    public void onPause() {
+        super.onPause();
+        if (DEBUG) Log.d(TAG, "Saving listView state");
+        mListViewState = getListView().onSaveInstanceState();
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+        loadAppsList();
+    }
+
+    public void setBackend(Backend backend) {
+        mBackend = backend;
+    }
+
+    private void loadAppsList() {
+        AsyncTask.execute(mCollectAppsRunnable);
+    }
+
+    private String getSection(CharSequence label) {
+        if (label == null || label.length() == 0) return SECTION_BEFORE_A;
+        final char c = Character.toUpperCase(label.charAt(0));
+        if (c < 'A') return SECTION_BEFORE_A;
+        if (c > 'Z') return SECTION_AFTER_Z;
+        return Character.toString(c);
+    }
+
+    private void repositionScrollbar() {
+        final int sbWidthPx = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
+                getListView().getScrollBarSize(),
+                getResources().getDisplayMetrics());
+        final View parent = (View)getView().getParent();
+        final int eat = Math.min(sbWidthPx, parent.getPaddingEnd());
+        if (eat <= 0) return;
+        if (DEBUG) Log.d(TAG, String.format("Eating %dpx into %dpx padding for %dpx scroll, ld=%d",
+                eat, parent.getPaddingEnd(), sbWidthPx, getListView().getLayoutDirection()));
+        parent.setPaddingRelative(parent.getPaddingStart(), parent.getPaddingTop(),
+                parent.getPaddingEnd() - eat, parent.getPaddingBottom());
+    }
+
+    private boolean isSystemApp(PackageInfo pkg) {
+        if (mSystemSignature == null) {
+            mSystemSignature = new Signature[]{ getSystemSignature() };
+        }
+        return mSystemSignature[0] != null && mSystemSignature[0].equals(getFirstSignature(pkg));
+    }
+
+    private static Signature getFirstSignature(PackageInfo pkg) {
+        if (pkg != null && pkg.signatures != null && pkg.signatures.length > 0) {
+            return pkg.signatures[0];
+        }
+        return null;
+    }
+
+    private Signature getSystemSignature() {
+        final PackageManager pm = mContext.getPackageManager();
+        try {
+            final PackageInfo sys = pm.getPackageInfo("android", PackageManager.GET_SIGNATURES);
+            return getFirstSignature(sys);
+        } catch (NameNotFoundException e) {
+        }
+        return null;
+    }
+
+
+    private void showDialog(final View v, final AppRow row) {
+        final RelativeLayout layout = (RelativeLayout)
+                mInflater.inflate(R.layout.notification_app_dialog, null);
+        final ImageView icon = (ImageView) layout.findViewById(android.R.id.icon);
+        icon.setImageDrawable(row.icon);
+        final TextView title = (TextView) layout.findViewById(android.R.id.title);
+        title.setText(row.label);
+        final CheckBox showBox = (CheckBox) layout.findViewById(android.R.id.button1);
+        showBox.setChecked(!row.banned);
+        final OnCheckedChangeListener showListener = new OnCheckedChangeListener() {
+            @Override
+            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+                boolean success = mBackend.setNotificationsBanned(row.pkg, row.uid, !isChecked);
+                if (success) {
+                    row.banned = !isChecked;
+                    mAdapter.bindView(v, row, true /*animate*/);
+                } else {
+                    showBox.setOnCheckedChangeListener(null);
+                    showBox.setChecked(!isChecked);
+                    showBox.setOnCheckedChangeListener(this);
+                }
+            }
+        };
+        showBox.setOnCheckedChangeListener(showListener);
+        final AlertDialog d = new AlertDialog.Builder(mContext)
+            .setView(layout)
+            .setPositiveButton(R.string.app_notifications_dialog_done, null)
+            .create();
+        d.show();
+    }
+
+    private static class ViewHolder {
+        ViewGroup row;
+        ViewGroup appButton;
+        ImageView icon;
+        ImageView banBadge;
+        ImageView priBadge;
+        TextView title;
+        View settingsDivider;
+        ImageView settingsButton;
+        View rowDivider;
+    }
+
+    private class NotificationAppAdapter extends ArrayAdapter<Row> implements SectionIndexer {
+        private final ShapeDrawable mBanShape, mPriShape;
+
+        public NotificationAppAdapter(Context context) {
+            super(context, 0, 0);
+            final int s = context.getResources()
+                    .getDimensionPixelSize(R.dimen.notification_app_icon_badge_size);
+            mBanShape = shape(banPath(s), s);
+            mPriShape = shape(priPath(s), s);
+        }
+
+        private ShapeDrawable shape(Path path, int s) {
+            final ShapeDrawable sd = new ShapeDrawable(new PathShape(path, s, s));
+            sd.getPaint().setStyle(Paint.Style.STROKE);
+            sd.getPaint().setColor(0xffffffff);
+            sd.getPaint().setStrokeWidth(s / 12);
+            sd.setIntrinsicWidth(s);
+            sd.setIntrinsicHeight(s);
+            return sd;
+        }
+
+        private Path banPath(int s) {
+            final Path p = new Path();
+            final int d = s / 5;
+            p.moveTo(d, d); p.lineTo(s - d, s - d);
+            p.moveTo(d, s - d); p.lineTo(s - d, d);
+            return p;
+        }
+
+        private Path priPath(int s) {
+            final Path p = new Path();
+            final int d = s / 5;
+            p.moveTo(s / 2, d); p.lineTo(s / 2, s - d);
+            return p;
+        }
+
+        @Override
+        public boolean hasStableIds() {
+            return true;
+        }
+
+        @Override
+        public long getItemId(int position) {
+            return position;
+        }
+
+        @Override
+        public int getViewTypeCount() {
+            return 2;
+        }
+
+        @Override
+        public int getItemViewType(int position) {
+            Row r = getItem(position);
+            return r instanceof AppRow ? 1 : 0;
+        }
+
+        public View getView(int position, View convertView, ViewGroup parent) {
+            Row r = getItem(position);
+            View v;
+            if (convertView == null) {
+                v = newView(parent, r);
+            } else {
+                v = convertView;
+            }
+            bindView(v, r, false /*animate*/);
+            return v;
+        }
+
+        public View newView(ViewGroup parent, Row r) {
+            if (!(r instanceof AppRow)) {
+                return mInflater.inflate(R.layout.notification_app_section, parent, false);
+            }
+            final View v = mInflater.inflate(R.layout.notification_app, parent, false);
+            final ViewHolder vh = new ViewHolder();
+            vh.row = (ViewGroup) v;
+            vh.row.setLayoutTransition(new LayoutTransition());
+            vh.appButton = (ViewGroup) v.findViewById(android.R.id.button1);
+            vh.appButton.setLayoutTransition(new LayoutTransition());
+            vh.icon = (ImageView) v.findViewById(android.R.id.icon);
+            vh.banBadge = (ImageView) v.findViewById(android.R.id.icon1);
+            vh.banBadge.setImageDrawable(mBanShape);
+            vh.priBadge = (ImageView) v.findViewById(android.R.id.icon2);
+            vh.priBadge.setImageDrawable(mPriShape);
+            vh.title = (TextView) v.findViewById(android.R.id.title);
+            vh.settingsDivider = v.findViewById(R.id.settings_divider);
+            vh.settingsButton = (ImageView) v.findViewById(android.R.id.button2);
+            vh.rowDivider = v.findViewById(R.id.row_divider);
+            v.setTag(vh);
+            return v;
+        }
+
+        private void enableLayoutTransitions(ViewGroup vg, boolean enabled) {
+            if (enabled) {
+                vg.getLayoutTransition().enableTransitionType(LayoutTransition.APPEARING);
+                vg.getLayoutTransition().enableTransitionType(LayoutTransition.DISAPPEARING);
+            } else {
+                vg.getLayoutTransition().disableTransitionType(LayoutTransition.APPEARING);
+                vg.getLayoutTransition().disableTransitionType(LayoutTransition.DISAPPEARING);
+            }
+        }
+
+        public void bindView(final View view, Row r, boolean animate) {
+            if (!(r instanceof AppRow)) {
+                TextView tv = (TextView)view;
+                tv.setText(r.section);
+                return;
+            }
+
+            final AppRow row = (AppRow)r;
+            final ViewHolder vh = (ViewHolder) view.getTag();
+            enableLayoutTransitions(vh.row, animate);
+            vh.rowDivider.setVisibility(row.first ? View.GONE : View.VISIBLE);
+            vh.appButton.setOnClickListener(new OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    showDialog(view, row);
+                }
+            });
+            enableLayoutTransitions(vh.appButton, animate);
+            vh.icon.setImageDrawable(row.icon);
+            vh.banBadge.setVisibility(row.banned ? View.VISIBLE : View.GONE);
+            vh.priBadge.setVisibility(row.priority ? View.VISIBLE : View.GONE);
+            vh.title.setText(row.label);
+            final boolean showSettings = !row.banned && row.settingsIntent != null;
+            vh.settingsDivider.setVisibility(showSettings ? View.VISIBLE : View.GONE);
+            vh.settingsButton.setVisibility(showSettings ? View.VISIBLE : View.GONE);
+            vh.settingsButton.setOnClickListener(new OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    if (row.settingsIntent != null) {
+                        getContext().startActivity(row.settingsIntent);
+                    }
+                }
+            });
+        }
+
+        @Override
+        public Object[] getSections() {
+            return mSections.toArray(new Object[mSections.size()]);
+        }
+
+        @Override
+        public int getPositionForSection(int sectionIndex) {
+            final String section = mSections.get(sectionIndex);
+            final int n = getCount();
+            for (int i = 0; i < n; i++) {
+                final Row r = getItem(i);
+                if (r.section.equals(section)) {
+                    return i;
+                }
+            }
+            return 0;
+        }
+
+        @Override
+        public int getSectionForPosition(int position) {
+            Row row = getItem(position);
+            return mSections.indexOf(row.section);
+        }
+    }
+
+    private static class Row {
+        public String section;
+    }
+
+    private static class AppRow extends Row {
+        public String pkg;
+        public int uid;
+        public Drawable icon;
+        public CharSequence label;
+        public Intent settingsIntent;
+        public boolean banned;
+        public boolean priority;
+        public boolean first;
+    }
+
+    private static final Comparator<AppRow> mRowComparator = new Comparator<AppRow>() {
+        private final Collator sCollator = Collator.getInstance();
+        @Override
+        public int compare(AppRow lhs, AppRow rhs) {
+            return sCollator.compare(lhs.label, rhs.label);
+        }
+    };
+
+    private final Runnable mCollectAppsRunnable = new Runnable() {
+        @Override
+        public void run() {
+            synchronized (mRows) {
+                final long start = SystemClock.uptimeMillis();
+                if (DEBUG) Log.d(TAG, "Collecting apps...");
+                mRows.clear();
+                mSortedRows.clear();
+
+                // collect all non-system apps
+                final PackageManager pm = mContext.getPackageManager();
+                for (PackageInfo pkg : pm.getInstalledPackages(PackageManager.GET_SIGNATURES)) {
+                    if (pkg.applicationInfo == null || isSystemApp(pkg)) {
+                        if (DEBUG) Log.d(TAG, "Skipping " + pkg.packageName);
+                        continue;
+                    }
+                    final AppRow row = new AppRow();
+                    row.pkg = pkg.packageName;
+                    row.uid = pkg.applicationInfo.uid;
+                    try {
+                        row.label = pkg.applicationInfo.loadLabel(pm);
+                    } catch (Throwable t) {
+                        Log.e(TAG, "Error loading application label for " + row.pkg, t);
+                        row.label = row.pkg;
+                    }
+                    row.icon = pkg.applicationInfo.loadIcon(pm);
+                    row.banned = mBackend.getNotificationsBanned(row.pkg, row.uid);
+                    row.priority = mBackend.getHighPriority(row.pkg, row.uid);
+                    mRows.put(row.pkg, row);
+                }
+                // collect config activities
+                Log.d(TAG, "APP_NOTIFICATION_PREFS_CATEGORY_INTENT is " + APP_NOTIFICATION_PREFS_CATEGORY_INTENT);
+                final List<ResolveInfo> resolveInfos = pm.queryIntentActivities(
+                        APP_NOTIFICATION_PREFS_CATEGORY_INTENT,
+                        PackageManager.MATCH_DEFAULT_ONLY);
+                if (DEBUG) Log.d(TAG, "Found " + resolveInfos.size() + " preference activities");
+                for (ResolveInfo ri : resolveInfos) {
+                    final ActivityInfo activityInfo = ri.activityInfo;
+                    final ApplicationInfo appInfo = activityInfo.applicationInfo;
+                    final AppRow row = mRows.get(appInfo.packageName);
+                    if (row == null) {
+                        Log.v(TAG, "Ignoring notification preference activity ("
+                                + activityInfo.name + ") for unknown package "
+                                + activityInfo.packageName);
+                        continue;
+                    }
+                    if (row.settingsIntent != null) {
+                        Log.v(TAG, "Ignoring duplicate notification preference activity ("
+                                + activityInfo.name + ") for package "
+                                + activityInfo.packageName);
+                        continue;
+                    }
+                    row.settingsIntent = new Intent(Intent.ACTION_MAIN)
+                            .setClassName(activityInfo.packageName, activityInfo.name);
+                }
+                // sort rows
+                mSortedRows.addAll(mRows.values());
+                Collections.sort(mSortedRows, mRowComparator);
+                // compute sections
+                mSections.clear();
+                String section = null;
+                for (AppRow r : mSortedRows) {
+                    r.section = getSection(r.label);
+                    if (!r.section.equals(section)) {
+                        section = r.section;
+                        mSections.add(section);
+                    }
+                }
+                mHandler.post(mRefreshAppsListRunnable);
+                final long elapsed = SystemClock.uptimeMillis() - start;
+                if (DEBUG) Log.d(TAG, "Collected " + mRows.size() + " apps in " + elapsed + "ms");
+            }
+        }
+    };
+
+    private void refreshDisplayedItems() {
+        if (DEBUG) Log.d(TAG, "Refreshing apps...");
+        mAdapter.clear();
+        synchronized (mSortedRows) {
+            String section = null;
+            final int N = mSortedRows.size();
+            boolean first = true;
+            for (int i = 0; i < N; i++) {
+                final AppRow row = mSortedRows.get(i);
+                if (!row.section.equals(section)) {
+                    section = row.section;
+                    Row r = new Row();
+                    r.section = section;
+                    mAdapter.add(r);
+                    first = true;
+                }
+                row.first = first;
+                mAdapter.add(row);
+                first = false;
+            }
+        }
+        if (mListViewState != null) {
+            if (DEBUG) Log.d(TAG, "Restoring listView state");
+            getListView().onRestoreInstanceState(mListViewState);
+            mListViewState = null;
+        }
+        if (DEBUG) Log.d(TAG, "Refreshed " + mSortedRows.size() + " displayed items");
+    }
+
+    private final Runnable mRefreshAppsListRunnable = new Runnable() {
+        @Override
+        public void run() {
+            refreshDisplayedItems();
+        }
+    };
+
+    public static class Backend {
+        public boolean setNotificationsBanned(String pkg, int uid, boolean banned) {
+            INotificationManager nm = INotificationManager.Stub.asInterface(
+                    ServiceManager.getService(Context.NOTIFICATION_SERVICE));
+            try {
+                nm.setNotificationsEnabledForPackage(pkg, uid, !banned);
+                return true;
+            } catch (Exception e) {
+               Log.w(TAG, "Error calling NoMan", e);
+               return false;
+            }
+        }
+
+        public boolean getNotificationsBanned(String pkg, int uid) {
+            INotificationManager nm = INotificationManager.Stub.asInterface(
+                    ServiceManager.getService(Context.NOTIFICATION_SERVICE));
+            try {
+                final boolean enabled = nm.areNotificationsEnabledForPackage(pkg, uid);
+                return !enabled;
+            } catch (Exception e) {
+                Log.w(TAG, "Error calling NoMan", e);
+                return false;
+            }
+        }
+
+        public boolean getHighPriority(String pkg, int uid) {
+            // TODO get high-pri state from NoMan
+            return false;
+        }
+
+        public boolean setHighPriority(String pkg, int uid, boolean priority) {
+            // TODO save high-pri state to NoMan
+            return true;
+        }
+    }
+}
diff --git a/src/com/android/settings/NotificationAccessSettings.java b/src/com/android/settings/notification/NotificationAccessSettings.java
similarity index 99%
rename from src/com/android/settings/NotificationAccessSettings.java
rename to src/com/android/settings/notification/NotificationAccessSettings.java
index 07d4353..78ea2d8 100644
--- a/src/com/android/settings/NotificationAccessSettings.java
+++ b/src/com/android/settings/notification/NotificationAccessSettings.java
@@ -14,41 +14,42 @@
  * limitations under the License.
  */
 
-package com.android.settings;
+package com.android.settings.notification;
 
 import android.app.ActivityManager;
 import android.app.AlertDialog;
 import android.app.Dialog;
 import android.app.DialogFragment;
+import android.app.ListFragment;
 import android.content.BroadcastReceiver;
+import android.content.ComponentName;
 import android.content.ContentResolver;
+import android.content.Context;
 import android.content.DialogInterface;
+import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.pm.PackageItemInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
 import android.content.pm.ServiceInfo;
 import android.database.ContentObserver;
 import android.net.Uri;
+import android.os.Bundle;
 import android.os.Handler;
+import android.provider.Settings;
 import android.service.notification.NotificationListenerService;
 import android.util.Slog;
-import android.widget.ArrayAdapter;
-
-import android.app.ListFragment;
-import android.content.ComponentName;
-import android.content.Context;
-import android.content.Intent;
-import android.content.pm.PackageManager;
-import android.content.pm.ResolveInfo;
-import android.os.Bundle;
-import android.provider.Settings;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.ArrayAdapter;
 import android.widget.CheckBox;
 import android.widget.ImageView;
 import android.widget.ListView;
 import android.widget.TextView;
 
+import com.android.settings.R;
+
 import java.util.HashSet;
 import java.util.List;
 
diff --git a/src/com/android/settings/notification/NotificationSettings.java b/src/com/android/settings/notification/NotificationSettings.java
new file mode 100644
index 0000000..24863cd
--- /dev/null
+++ b/src/com/android/settings/notification/NotificationSettings.java
@@ -0,0 +1,252 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification;
+
+import android.content.ContentResolver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.database.ContentObserver;
+import android.media.RingtoneManager;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.Message;
+import android.preference.Preference;
+import android.preference.Preference.OnPreferenceClickListener;
+import android.preference.PreferenceGroup;
+import android.preference.PreferenceScreen;
+import android.preference.TwoStatePreference;
+import android.provider.Settings;
+import android.util.Log;
+
+import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.SoundSettings;
+
+public class NotificationSettings extends SettingsPreferenceFragment implements
+        Preference.OnPreferenceChangeListener, OnPreferenceClickListener {
+    private static final String TAG = "NotificationSettings";
+
+    private static final String KEY_NOTIFICATION_SOUND = "notification_sound";
+    private static final String KEY_NOTIFICATION_PULSE = "notification_pulse";
+    private static final String KEY_HEADS_UP = "heads_up";
+    private static final String KEY_LOCK_SCREEN_NOTIFICATIONS = "toggle_lock_screen_notifications";
+    private static final String KEY_NOTIFICATION_ACCESS = "manage_notification_access";
+
+    private static final String KEY_TWEAKS_CATEGORY = "category_tweaks"; // power toys, eng only
+
+    private static final int MSG_UPDATE_SOUND_SUMMARY = 2;
+
+    private Context mContext;
+    private PackageManager mPM;
+
+    private Preference mNotificationSoundPreference;
+    private Preference mNotificationAccess;
+    private TwoStatePreference mLockscreenNotifications;
+    private TwoStatePreference mHeadsUp;
+    private TwoStatePreference mNotificationPulse;
+
+    private final Runnable mRingtoneLookupRunnable = new Runnable() {
+        @Override
+        public void run() {
+            if (mNotificationSoundPreference != null) {
+                final CharSequence summary = SoundSettings.updateRingtoneName(
+                        mContext, RingtoneManager.TYPE_NOTIFICATION);
+                if (summary != null) {
+                    mHandler.sendMessage(
+                            mHandler.obtainMessage(MSG_UPDATE_SOUND_SUMMARY, summary));
+                }
+            }
+        }
+    };
+
+    private final Handler mHandler = new Handler() {
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_UPDATE_SOUND_SUMMARY:
+                    mNotificationSoundPreference.setSummary((CharSequence) msg.obj);
+                    break;
+            }
+        }
+    };
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        mContext = getActivity();
+        final ContentResolver resolver = mContext.getContentResolver();
+
+        mPM = mContext.getPackageManager();
+
+        addPreferencesFromResource(R.xml.notification_settings);
+
+        final PreferenceScreen root = getPreferenceScreen();
+
+        PreferenceGroup tweaksCategory = (PreferenceGroup)
+                root.findPreference(KEY_TWEAKS_CATEGORY);
+
+        if (tweaksCategory != null
+                && !(Build.TYPE.equals("eng") || Build.TYPE.equals("userdebug"))) {
+            root.removePreference(tweaksCategory);
+            tweaksCategory = null;
+        }
+
+        mNotificationSoundPreference = findPreference(KEY_NOTIFICATION_SOUND);
+
+        mNotificationAccess = findPreference(KEY_NOTIFICATION_ACCESS);
+        refreshNotificationListeners();
+
+        mLockscreenNotifications
+                = (TwoStatePreference) root.findPreference(KEY_LOCK_SCREEN_NOTIFICATIONS);
+        if (mLockscreenNotifications != null) {
+            if (!getDeviceLockscreenNotificationsEnabled()) {
+                root.removePreference(mLockscreenNotifications);
+            } else {
+                mLockscreenNotifications.setChecked(getLockscreenAllowPrivateNotifications());
+            }
+        }
+
+        mHeadsUp = (TwoStatePreference) findPreference(KEY_HEADS_UP);
+        if (mHeadsUp != null) {
+            updateHeadsUpMode(resolver);
+            mHeadsUp.setOnPreferenceChangeListener(this);
+            resolver.registerContentObserver(
+                    Settings.Global.getUriFor(Settings.Global.HEADS_UP_NOTIFICATIONS_ENABLED),
+                    false, new ContentObserver(mHandler) {
+                @Override
+                public void onChange(boolean selfChange) {
+                    updateHeadsUpMode(resolver);
+                }
+            });
+        }
+        mNotificationPulse = (TwoStatePreference) findPreference(KEY_NOTIFICATION_PULSE);
+
+        if (mNotificationPulse != null
+                && getResources().getBoolean(
+                com.android.internal.R.bool.config_intrusiveNotificationLed) == false) {
+            getPreferenceScreen().removePreference(mNotificationPulse);
+        } else {
+            try {
+                mNotificationPulse.setChecked(Settings.System.getInt(resolver,
+                        Settings.System.NOTIFICATION_LIGHT_PULSE) == 1);
+                mNotificationPulse.setOnPreferenceChangeListener(this);
+            } catch (Settings.SettingNotFoundException snfe) {
+                Log.e(TAG, Settings.System.NOTIFICATION_LIGHT_PULSE + " not found");
+            }
+        }
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+
+        refreshNotificationListeners();
+        lookupRingtoneNames();
+    }
+
+    @Override
+    public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
+        final String key = preference.getKey();
+
+        if (KEY_LOCK_SCREEN_NOTIFICATIONS.equals(key)) {
+            Settings.Secure.putInt(getContentResolver(),
+                    Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS,
+                    mLockscreenNotifications.isChecked() ? 1 : 0);
+        } else if (KEY_HEADS_UP.equals(key)) {
+            setHeadsUpMode(getContentResolver(), mHeadsUp.isChecked());
+        } else if (KEY_NOTIFICATION_PULSE.equals(key)) {
+            Settings.System.putInt(getContentResolver(),
+                    Settings.System.NOTIFICATION_LIGHT_PULSE,
+                    mNotificationPulse.isChecked() ? 1 : 0);
+        } else {
+            return super.onPreferenceTreeClick(preferenceScreen, preference);
+        }
+
+        return true;
+    }
+
+    @Override
+    public boolean onPreferenceChange(Preference preference, Object objValue) {
+        return true;
+    }
+
+    @Override
+    public boolean onPreferenceClick(Preference preference) {
+        return false;
+    }
+
+    // === Heads-up notifications ===
+
+    private void updateHeadsUpMode(ContentResolver resolver) {
+        mHeadsUp.setChecked(Settings.Global.HEADS_UP_ON == Settings.Global.getInt(resolver,
+                Settings.Global.HEADS_UP_NOTIFICATIONS_ENABLED, Settings.Global.HEADS_UP_OFF));
+    }
+
+    private void setHeadsUpMode(ContentResolver resolver, boolean value) {
+        Settings.Global.putInt(resolver, Settings.Global.HEADS_UP_NOTIFICATIONS_ENABLED,
+                value ? Settings.Global.HEADS_UP_ON : Settings.Global.HEADS_UP_OFF);
+    }
+
+    // === Lockscreen (public / private) notifications ===
+
+    private boolean getDeviceLockscreenNotificationsEnabled() {
+        return 0 != Settings.Global.getInt(getContentResolver(),
+                Settings.Global.LOCK_SCREEN_SHOW_NOTIFICATIONS, 0);
+    }
+
+    private boolean getLockscreenAllowPrivateNotifications() {
+        return 0 != Settings.Secure.getInt(getContentResolver(),
+                Settings.Secure.LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS, 0);
+    }
+
+    // === Notification listeners ===
+
+    private int getNumEnabledNotificationListeners() {
+        final String flat = Settings.Secure.getString(getContentResolver(),
+                Settings.Secure.ENABLED_NOTIFICATION_LISTENERS);
+        if (flat == null || "".equals(flat)) return 0;
+        final String[] components = flat.split(":");
+        return components.length;
+    }
+
+    private void refreshNotificationListeners() {
+        if (mNotificationAccess != null) {
+            final int total = NotificationAccessSettings.getListenersCount(mPM);
+            if (total == 0) {
+                getPreferenceScreen().removePreference(mNotificationAccess);
+            } else {
+                final int n = getNumEnabledNotificationListeners();
+                if (n == 0) {
+                    mNotificationAccess.setSummary(getResources().getString(
+                            R.string.manage_notification_access_summary_zero));
+                } else {
+                    mNotificationAccess.setSummary(String.format(getResources().getQuantityString(
+                            R.plurals.manage_notification_access_summary_nonzero,
+                            n, n)));
+                }
+            }
+        }
+    }
+
+    // === Ringtone ===
+
+    private void lookupRingtoneNames() {
+        new Thread(mRingtoneLookupRunnable).start();
+    }
+}
diff --git a/src/com/android/settings/NotificationStation.java b/src/com/android/settings/notification/NotificationStation.java
similarity index 98%
rename from src/com/android/settings/NotificationStation.java
rename to src/com/android/settings/notification/NotificationStation.java
index 5083e27..d8a3efb 100644
--- a/src/com/android/settings/NotificationStation.java
+++ b/src/com/android/settings/notification/NotificationStation.java
@@ -14,16 +14,14 @@
  * limitations under the License.
  */
 
-package com.android.settings;
+package com.android.settings.notification;
 
 import android.app.Activity;
 import android.app.ActivityManager;
-import android.content.ComponentName;
-import android.service.notification.INotificationListener;
 import android.app.INotificationManager;
 import android.app.Notification;
-import android.service.notification.StatusBarNotification;
 import android.content.BroadcastReceiver;
+import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
@@ -37,6 +35,8 @@
 import android.os.RemoteException;
 import android.os.ServiceManager;
 import android.os.UserHandle;
+import android.service.notification.INotificationListener;
+import android.service.notification.StatusBarNotification;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -48,6 +48,9 @@
 import android.widget.ListView;
 import android.widget.TextView;
 
+import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.List;
diff --git a/src/com/android/settings/notification/ZenModeSettings.java b/src/com/android/settings/notification/ZenModeSettings.java
new file mode 100644
index 0000000..d7d25cf
--- /dev/null
+++ b/src/com/android/settings/notification/ZenModeSettings.java
@@ -0,0 +1,541 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.notification;
+
+import android.app.ActionBar;
+import android.app.Activity;
+import android.app.Dialog;
+import android.app.DialogFragment;
+import android.app.FragmentManager;
+import android.app.INotificationManager;
+import android.app.TimePickerDialog;
+import android.content.Context;
+import android.content.res.Resources;
+import android.database.ContentObserver;
+import android.graphics.Typeface;
+import android.net.Uri;
+import android.os.AsyncTask;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.ServiceManager;
+import android.preference.Preference;
+import android.preference.Preference.OnPreferenceChangeListener;
+import android.preference.PreferenceCategory;
+import android.preference.PreferenceScreen;
+import android.preference.SwitchPreference;
+import android.provider.Settings.Global;
+import android.service.notification.ZenModeConfig;
+import android.text.format.DateFormat;
+import android.util.Log;
+import android.view.Gravity;
+import android.view.Menu;
+import android.view.MenuInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.AdapterView;
+import android.widget.AdapterView.OnItemSelectedListener;
+import android.widget.ArrayAdapter;
+import android.widget.CompoundButton;
+import android.widget.CompoundButton.OnCheckedChangeListener;
+import android.widget.Spinner;
+import android.widget.Switch;
+import android.widget.TextView;
+import android.widget.TimePicker;
+
+import com.android.settings.R;
+import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settings.search.Indexable;
+import com.android.settings.search.SearchIndexableRaw;
+
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.List;
+import java.util.Objects;
+
+public class ZenModeSettings extends SettingsPreferenceFragment implements Indexable {
+    private static final String TAG = "ZenModeSettings";
+    private static final boolean DEBUG = true;
+
+    private static final String KEY_GENERAL = "general";
+    private static final String KEY_CALLS = "phone_calls";
+    private static final String KEY_MESSAGES = "messages";
+
+    private static final String KEY_AUTOMATIC = "automatic";
+    private static final String KEY_WHEN = "when";
+
+    private final Handler mHandler = new Handler();
+    private final SettingsObserver mSettingsObserver = new SettingsObserver();
+
+    private Switch mSwitch;
+    private Activity mActivity;
+    private Context mContext;
+    private MenuItem mSearch;
+    private ZenModeConfig mConfig;
+    private boolean mDisableListeners;
+    private SwitchPreference mCalls;
+    private SwitchPreference mMessages;
+    private DropDownPreference mStarred;
+    private DropDownPreference mWhen;
+    private TimePickerPreference mStart;
+    private TimePickerPreference mEnd;
+
+    @Override
+    public void onCreate(Bundle icicle) {
+        super.onCreate(icicle);
+        mContext = mActivity = getActivity();
+        mSwitch = new Switch(mActivity.getActionBar().getThemedContext());
+        final Resources res = mContext.getResources();
+        final int p = res.getDimensionPixelSize(R.dimen.content_margin_left);
+        mSwitch.setPadding(0, 0, p, 0);
+        setHasOptionsMenu(true);
+
+        addPreferencesFromResource(R.xml.zen_mode_settings);
+        final PreferenceScreen root = getPreferenceScreen();
+
+        mConfig = getZenModeConfig();
+        if (DEBUG) Log.d(TAG, "Loaded mConfig=" + mConfig);
+
+        final PreferenceCategory general = (PreferenceCategory) root.findPreference(KEY_GENERAL);
+
+        mCalls = (SwitchPreference) root.findPreference(KEY_CALLS);
+        mCalls.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+            @Override
+            public boolean onPreferenceChange(Preference preference, Object newValue) {
+                if (mDisableListeners) return true;
+                final boolean val = (Boolean) newValue;
+                if (val == mConfig.allowCalls) return true;
+                if (DEBUG) Log.d(TAG, "onPrefChange allowCalls=" + val);
+                final ZenModeConfig newConfig = mConfig.copy();
+                newConfig.allowCalls = val;
+                return setZenModeConfig(newConfig);
+            }
+        });
+
+        mMessages = (SwitchPreference) root.findPreference(KEY_MESSAGES);
+        mMessages.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
+            @Override
+            public boolean onPreferenceChange(Preference preference, Object newValue) {
+                if (mDisableListeners) return true;
+                final boolean val = (Boolean) newValue;
+                if (val == mConfig.allowMessages) return true;
+                if (DEBUG) Log.d(TAG, "onPrefChange allowMessages=" + val);
+                final ZenModeConfig newConfig = mConfig.copy();
+                newConfig.allowMessages = val;
+                return setZenModeConfig(newConfig);
+            }
+        });
+
+        mStarred = new DropDownPreference(mContext);
+        mStarred.setEnabled(false);
+        mStarred.setTitle(R.string.zen_mode_from);
+        mStarred.addItem(R.string.zen_mode_from_anyone);
+        mStarred.addItem(R.string.zen_mode_from_starred);
+        mStarred.addItem(R.string.zen_mode_from_contacts);
+        general.addPreference(mStarred);
+
+        final Preference alarmInfo = new Preference(mContext) {
+            @Override
+            public View getView(View convertView, ViewGroup parent) {
+                final TextView tv = new TextView(mContext);
+                tv.setTypeface(Typeface.create(Typeface.DEFAULT, Typeface.ITALIC));
+                tv.setPadding(p, p, p, p);
+                tv.setText(R.string.zen_mode_alarm_info);
+                return tv;
+            }
+        };
+        alarmInfo.setPersistent(false);
+        alarmInfo.setSelectable(false);
+        general.addPreference(alarmInfo);
+
+        final PreferenceCategory auto = (PreferenceCategory) root.findPreference(KEY_AUTOMATIC);
+
+        mWhen = new DropDownPreference(mContext);
+        mWhen.setKey(KEY_WHEN);
+        mWhen.setTitle(R.string.zen_mode_when);
+        mWhen.addItem(R.string.zen_mode_when_never);
+        mWhen.addItem(R.string.zen_mode_when_every_night);
+        mWhen.addItem(R.string.zen_mode_when_weeknights);
+        mWhen.setCallback(new DropDownPreference.Callback() {
+            @Override
+            public boolean onItemSelected(int pos) {
+                if (mDisableListeners) return true;
+                final String mode = pos == 1 ? ZenModeConfig.SLEEP_MODE_NIGHTS :
+                    pos == 2 ? ZenModeConfig.SLEEP_MODE_WEEKNIGHTS : null;
+                if (Objects.equals(mode, mConfig.sleepMode)) return true;
+                if (DEBUG) Log.d(TAG, "onPrefChange sleepMode=" + mode);
+                final ZenModeConfig newConfig = mConfig.copy();
+                newConfig.sleepMode = mode;
+                return setZenModeConfig(newConfig);
+            }
+        });
+        auto.addPreference(mWhen);
+
+        final FragmentManager mgr = getFragmentManager();
+
+        mStart = new TimePickerPreference(mContext, mgr);
+        mStart.setTitle(R.string.zen_mode_start_time);
+        mStart.setCallback(new TimePickerPreference.Callback() {
+            @Override
+            public boolean onSetTime(int hour, int minute) {
+                if (mDisableListeners) return true;
+                if (!ZenModeConfig.isValidHour(hour)) return false;
+                if (!ZenModeConfig.isValidMinute(minute)) return false;
+                if (hour == mConfig.sleepStartHour && minute == mConfig.sleepStartMinute) {
+                    return true;
+                }
+                if (DEBUG) Log.d(TAG, "onPrefChange sleepStart h=" + hour + " m=" + minute);
+                final ZenModeConfig newConfig = mConfig.copy();
+                newConfig.sleepStartHour = hour;
+                newConfig.sleepStartMinute = minute;
+                return setZenModeConfig(newConfig);
+            }
+        });
+        auto.addPreference(mStart);
+
+        mEnd = new TimePickerPreference(mContext, mgr);
+        mEnd.setTitle(R.string.zen_mode_end_time);
+        mEnd.setSummaryFormat(R.string.zen_mode_end_time_summary_format);
+        mEnd.setCallback(new TimePickerPreference.Callback() {
+            @Override
+            public boolean onSetTime(int hour, int minute) {
+                if (mDisableListeners) return true;
+                if (!ZenModeConfig.isValidHour(hour)) return false;
+                if (!ZenModeConfig.isValidMinute(minute)) return false;
+                if (hour == mConfig.sleepEndHour && minute == mConfig.sleepEndMinute) {
+                    return true;
+                }
+                if (DEBUG) Log.d(TAG, "onPrefChange sleepEnd h=" + hour + " m=" + minute);
+                final ZenModeConfig newConfig = mConfig.copy();
+                newConfig.sleepEndHour = hour;
+                newConfig.sleepEndMinute = minute;
+                return setZenModeConfig(newConfig);
+            }
+        });
+        auto.addPreference(mEnd);
+
+        mStart.setDependency(mWhen.getKey());
+        mEnd.setDependency(mWhen.getKey());
+
+        updateControls();
+    }
+
+    private void updateControls() {
+        mDisableListeners = true;
+        mCalls.setChecked(mConfig.allowCalls);
+        mMessages.setChecked(mConfig.allowMessages);
+        mStarred.setSelectedItem(0);
+        mWhen.setSelectedItem(
+                ZenModeConfig.SLEEP_MODE_NIGHTS.equals(mConfig.sleepMode) ? 1 :
+                ZenModeConfig.SLEEP_MODE_WEEKNIGHTS.equals(mConfig.sleepMode) ? 2 : 0);
+        mStart.setTime(mConfig.sleepStartHour, mConfig.sleepStartMinute);
+        mEnd.setTime(mConfig.sleepEndHour, mConfig.sleepEndMinute);
+        mDisableListeners = false;
+    }
+
+    @Override
+    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
+        super.onCreateOptionsMenu(menu, inflater);
+        mSearch = menu.findItem(R.id.search);
+        if (mSearch != null) mSearch.setVisible(false);
+    }
+
+    @Override
+    public void onResume() {
+        super.onResume();
+        updateZenMode();
+        mSettingsObserver.register();
+        mActivity.getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
+                ActionBar.DISPLAY_SHOW_CUSTOM);
+        mActivity.getActionBar().setCustomView(mSwitch, new ActionBar.LayoutParams(
+                ActionBar.LayoutParams.WRAP_CONTENT,
+                ActionBar.LayoutParams.WRAP_CONTENT,
+                Gravity.CENTER_VERTICAL | Gravity.END));
+        if (mSearch != null) mSearch.setVisible(false);
+    }
+
+    @Override
+    public void onPause() {
+        super.onPause();
+        mSettingsObserver.unregister();
+        mActivity.getActionBar().setDisplayOptions(0, ActionBar.DISPLAY_SHOW_CUSTOM);
+        if (mSearch != null) mSearch.setVisible(true);
+    }
+
+    private void updateZenMode() {
+        mSwitch.setOnCheckedChangeListener(null);
+        final boolean zenMode = Global.getInt(getContentResolver(),
+                Global.ZEN_MODE, Global.ZEN_MODE_OFF) != Global.ZEN_MODE_OFF;
+        mSwitch.setChecked(zenMode);
+        mSwitch.setOnCheckedChangeListener(mSwitchListener);
+    }
+
+    private void updateZenModeConfig() {
+        final ZenModeConfig config = getZenModeConfig();
+        if (Objects.equals(config, mConfig)) return;
+        if (DEBUG) Log.d(TAG, "updateZenModeConfig");
+        updateControls();
+    }
+
+    private ZenModeConfig getZenModeConfig() {
+        final INotificationManager nm = INotificationManager.Stub.asInterface(
+                ServiceManager.getService(Context.NOTIFICATION_SERVICE));
+        try {
+            return nm.getZenModeConfig();
+        } catch (Exception e) {
+           Log.w(TAG, "Error calling NoMan", e);
+           return new ZenModeConfig();
+        }
+    }
+
+    private boolean setZenModeConfig(ZenModeConfig config) {
+        final INotificationManager nm = INotificationManager.Stub.asInterface(
+                ServiceManager.getService(Context.NOTIFICATION_SERVICE));
+        try {
+            final boolean success = nm.setZenModeConfig(config);
+            if (success) {
+                mConfig = config;
+                if (DEBUG) Log.d(TAG, "Saved mConfig=" + mConfig);
+            }
+            return success;
+        } catch (Exception e) {
+           Log.w(TAG, "Error calling NoMan", e);
+           return false;
+        }
+    }
+
+    private final OnCheckedChangeListener mSwitchListener = new OnCheckedChangeListener() {
+        @Override
+        public void onCheckedChanged(CompoundButton buttonView, final boolean isChecked) {
+            AsyncTask.execute(new Runnable() {
+                @Override
+                public void run() {
+                    final int v = isChecked ? Global.ZEN_MODE_ON : Global.ZEN_MODE_OFF;
+                    Global.putInt(getContentResolver(), Global.ZEN_MODE, v);
+                }
+            });
+        }
+    };
+
+    // Enable indexing of searchable data
+    public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+        new BaseSearchIndexProvider() {
+            @Override
+            public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) {
+                final List<SearchIndexableRaw> result = new ArrayList<SearchIndexableRaw>();
+                add(result, context, R.string.zen_mode_settings_title);
+                add(result, context, R.string.zen_mode_general_category);
+                add(result, context, R.string.zen_mode_phone_calls);
+                add(result, context, R.string.zen_mode_messages);
+                add(result, context, R.string.zen_mode_automatic_category);
+                add(result, context, R.string.zen_mode_when);
+                add(result, context, R.string.zen_mode_start_time);
+                add(result, context, R.string.zen_mode_end_time);
+                return result;
+            }
+
+            private void add(List<SearchIndexableRaw> result, Context context, int title) {
+                final Resources res = context.getResources();
+                final SearchIndexableRaw data = new SearchIndexableRaw(context);
+                data.title = res.getString(title);
+                data.screenTitle = res.getString(R.string.zen_mode_settings_title);
+                result.add(data);
+            }
+        };
+
+    private final class SettingsObserver extends ContentObserver {
+        private final Uri ZEN_MODE_URI = Global.getUriFor(Global.ZEN_MODE);
+        private final Uri ZEN_MODE_CONFIG_ETAG_URI = Global.getUriFor(Global.ZEN_MODE_CONFIG_ETAG);
+
+        public SettingsObserver() {
+            super(mHandler);
+        }
+
+        public void register() {
+            getContentResolver().registerContentObserver(ZEN_MODE_URI, false, this);
+            getContentResolver().registerContentObserver(ZEN_MODE_CONFIG_ETAG_URI, false, this);
+        }
+
+        public void unregister() {
+            getContentResolver().unregisterContentObserver(this);
+        }
+
+        @Override
+        public void onChange(boolean selfChange, Uri uri) {
+            super.onChange(selfChange, uri);
+            if (ZEN_MODE_URI.equals(uri)) {
+                updateZenMode();
+            }
+            if (ZEN_MODE_CONFIG_ETAG_URI.equals(uri)) {
+                updateZenModeConfig();
+            }
+        }
+    }
+
+    private static class TimePickerPreference extends Preference {
+        private final Context mContext;
+
+        private int mSummaryFormat;
+        private int mHourOfDay;
+        private int mMinute;
+        private Callback mCallback;
+
+        public TimePickerPreference(Context context, final FragmentManager mgr) {
+            super(context);
+            mContext = context;
+            setPersistent(false);
+            setOnPreferenceClickListener(new OnPreferenceClickListener(){
+                @Override
+                public boolean onPreferenceClick(Preference preference) {
+                    final TimePickerFragment frag = new TimePickerFragment();
+                    frag.pref = TimePickerPreference.this;
+                    frag.show(mgr, TimePickerPreference.class.getName());
+                    return true;
+                }
+            });
+        }
+
+        public void setCallback(Callback callback) {
+            mCallback = callback;
+        }
+
+        public void setSummaryFormat(int resId) {
+            mSummaryFormat = resId;
+            updateSummary();
+        }
+
+        public void setTime(int hourOfDay, int minute) {
+            if (mCallback != null && !mCallback.onSetTime(hourOfDay, minute)) return;
+            mHourOfDay = hourOfDay;
+            mMinute = minute;
+            updateSummary();
+        }
+
+        private void updateSummary() {
+            final Calendar c = Calendar.getInstance();
+            c.set(Calendar.HOUR_OF_DAY, mHourOfDay);
+            c.set(Calendar.MINUTE, mMinute);
+            String time = DateFormat.getTimeFormat(mContext).format(c.getTime());
+            if (mSummaryFormat != 0) {
+                time = mContext.getResources().getString(mSummaryFormat, time);
+            }
+            setSummary(time);
+        }
+
+        public static class TimePickerFragment extends DialogFragment implements
+                TimePickerDialog.OnTimeSetListener {
+            public TimePickerPreference pref;
+
+            @Override
+            public Dialog onCreateDialog(Bundle savedInstanceState) {
+                final boolean usePref = pref != null && pref.mHourOfDay >= 0 && pref.mMinute >= 0;
+                final Calendar c = Calendar.getInstance();
+                final int hour = usePref ? pref.mHourOfDay : c.get(Calendar.HOUR_OF_DAY);
+                final int minute = usePref ? pref.mMinute : c.get(Calendar.MINUTE);
+                return new TimePickerDialog(getActivity(), this, hour, minute,
+                        DateFormat.is24HourFormat(getActivity()));
+            }
+
+            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
+                if (pref != null) {
+                    pref.setTime(hourOfDay, minute);
+                }
+            }
+        }
+
+        public interface Callback {
+            boolean onSetTime(int hour, int minute);
+        }
+    }
+
+    private static class DropDownPreference extends Preference {
+        private final Context mContext;
+        private final ArrayAdapter<String> mAdapter;
+        private final Spinner mSpinner;
+
+        private Callback mCallback;
+
+        public DropDownPreference(Context context) {
+            super(context);
+            mContext = context;
+            mAdapter = new ArrayAdapter<String>(mContext,
+                    android.R.layout.simple_spinner_dropdown_item);
+
+            mSpinner = new Spinner(mContext);
+            mSpinner.setDropDownWidth(mContext.getResources()
+                    .getDimensionPixelSize(R.dimen.zen_mode_dropdown_width));
+            mSpinner.setVisibility(View.INVISIBLE);
+            mSpinner.setAdapter(mAdapter);
+            mSpinner.setOnItemSelectedListener(new OnItemSelectedListener() {
+                @Override
+                public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {
+                    setSelectedItem(position);
+                }
+
+                @Override
+                public void onNothingSelected(AdapterView<?> parent) {
+                    // noop
+                }
+            });
+            setPersistent(false);
+            setOnPreferenceClickListener(new OnPreferenceClickListener() {
+                @Override
+                public boolean onPreferenceClick(Preference preference) {
+                    mSpinner.performClick();
+                    return true;
+                }
+            });
+        }
+
+        public void setCallback(Callback callback) {
+            mCallback = callback;
+        }
+
+        public void setSelectedItem(int position) {
+            if (mCallback != null && !mCallback.onItemSelected(position)) {
+                return;
+            }
+            mSpinner.setSelection(position);
+            setSummary(mAdapter.getItem(position));
+            final boolean disableDependents = position == 0;
+            notifyDependencyChange(disableDependents);
+        }
+
+        public void addItem(int resId) {
+            mAdapter.add(mContext.getResources().getString(resId));
+        }
+
+        @Override
+        protected void onBindView(View view) {
+            super.onBindView(view);
+            if (view.equals(mSpinner.getParent())) return;
+            if (mSpinner.getParent() != null) {
+                ((ViewGroup)mSpinner.getParent()).removeView(mSpinner);
+            }
+            final ViewGroup vg = (ViewGroup)view;
+            vg.addView(mSpinner, 0);
+            final ViewGroup.LayoutParams lp = mSpinner.getLayoutParams();
+            lp.width = 0;
+            mSpinner.setLayoutParams(lp);
+        }
+
+        public interface Callback {
+            boolean onItemSelected(int pos);
+        }
+    }
+}
diff --git a/src/com/android/settings/print/PrintServiceSettingsFragment.java b/src/com/android/settings/print/PrintServiceSettingsFragment.java
index 3bba963..ab162fb 100644
--- a/src/com/android/settings/print/PrintServiceSettingsFragment.java
+++ b/src/com/android/settings/print/PrintServiceSettingsFragment.java
@@ -176,13 +176,13 @@
 
     private void onPreferenceToggled(String preferenceKey, boolean enabled) {
         ComponentName service = ComponentName.unflattenFromString(preferenceKey);
-        List<ComponentName> services = SettingsUtils.readEnabledPrintServices(getActivity());
+        List<ComponentName> services = PrintSettingsUtils.readEnabledPrintServices(getActivity());
         if (enabled) {
             services.add(service);
         } else {
             services.remove(service);
         }
-        SettingsUtils.writeEnabledPrintServices(getActivity(), services);
+        PrintSettingsUtils.writeEnabledPrintServices(getActivity(), services);
     }
 
     @Override
@@ -278,7 +278,7 @@
     }
 
     private void updateUiForServiceState() {
-        List<ComponentName> services = SettingsUtils.readEnabledPrintServices(getActivity());
+        List<ComponentName> services = PrintSettingsUtils.readEnabledPrintServices(getActivity());
         mServiceEnabled = services.contains(mComponentName);
         if (mServiceEnabled) {
             mToggleSwitch.setCheckedInternal(true);
@@ -294,7 +294,7 @@
         mPrintersAdapter = new PrintersAdapter();
         mPrintersAdapter.registerDataSetObserver(mDataObserver);
 
-        mToggleSwitch = createActionBarToggleSwitch(getActivity());
+        mToggleSwitch = createActionBarToggleSwitch(getActivity().getActionBar().getThemedContext());
         mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
             @Override
             public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
@@ -445,9 +445,9 @@
         }
     }
 
-    private ToggleSwitch createActionBarToggleSwitch(Activity activity) {
-        ToggleSwitch toggleSwitch = new ToggleSwitch(activity);
-        final int padding = activity.getResources().getDimensionPixelSize(
+    private ToggleSwitch createActionBarToggleSwitch(Context context) {
+        ToggleSwitch toggleSwitch = new ToggleSwitch(context);
+        final int padding = context.getResources().getDimensionPixelSize(
                 R.dimen.action_bar_switch_padding);
         toggleSwitch.setPaddingRelative(0, 0, padding, 0);
         return toggleSwitch;
diff --git a/src/com/android/settings/print/PrintSettingsFragment.java b/src/com/android/settings/print/PrintSettingsFragment.java
index 0215ad8..07e70d8 100644
--- a/src/com/android/settings/print/PrintSettingsFragment.java
+++ b/src/com/android/settings/print/PrintSettingsFragment.java
@@ -50,7 +50,6 @@
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewGroup;
-import android.view.accessibility.AccessibilityNodeInfo;
 import android.widget.Switch;
 import android.widget.TextView;
 
@@ -59,7 +58,7 @@
 import com.android.settings.R;
 import com.android.settings.SettingsPreferenceFragment;
 import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;;
+import com.android.settings.search.Indexable;
 import com.android.settings.search.SearchIndexableRaw;
 
 import java.text.DateFormat;
@@ -72,8 +71,6 @@
 public class PrintSettingsFragment extends SettingsPreferenceFragment
         implements DialogCreatable, Indexable {
 
-    static final char ENABLED_PRINT_SERVICES_SEPARATOR = ':';
-
     private static final int LOADER_ID_PRINT_JOBS_LOADER = 1;
 
     private static final String PRINT_JOBS_CATEGORY = "print_jobs_category";
@@ -184,7 +181,7 @@
             mPrintServicesCategory.removeAll();
         }
 
-        List<ComponentName> enabledServices = SettingsUtils
+        List<ComponentName> enabledServices = PrintSettingsUtils
                 .readEnabledPrintServices(getActivity());
 
         List<ResolveInfo> installedServices = getActivity().getPackageManager()
@@ -561,14 +558,20 @@
             PrintManager printManager = (PrintManager) context.getSystemService(
                     Context.PRINT_SERVICE);
 
-            String screenTitle = context.getResources().getString(R.string.print_settings_title);
+            String screenTitle = context.getResources().getString(R.string.print_settings);
 
             // Indexing all services, reagardles if enabled.
             List<PrintServiceInfo> services = printManager.getInstalledPrintServices();
             final int serviceCount = services.size();
             for (int i = 0; i < serviceCount; i++) {
                 PrintServiceInfo service = services.get(i);
+
+                ComponentName componentName = new ComponentName(
+                        service.getResolveInfo().serviceInfo.packageName,
+                        service.getResolveInfo().serviceInfo.name);
+
                 SearchIndexableRaw indexable = new SearchIndexableRaw(context);
+                indexable.key = componentName.flattenToString();
                 indexable.title = service.getResolveInfo().loadLabel(packageManager).toString();
                 indexable.summaryOn = context.getString(R.string.print_feature_state_on);
                 indexable.summaryOff = context.getString(R.string.print_feature_state_off);
diff --git a/src/com/android/settings/print/SettingsUtils.java b/src/com/android/settings/print/PrintSettingsUtils.java
similarity index 97%
rename from src/com/android/settings/print/SettingsUtils.java
rename to src/com/android/settings/print/PrintSettingsUtils.java
index 37827e6..24f20d5 100644
--- a/src/com/android/settings/print/SettingsUtils.java
+++ b/src/com/android/settings/print/PrintSettingsUtils.java
@@ -26,11 +26,11 @@
 /**
  * Helper methods for reading and writing to print settings.
  */
-public class SettingsUtils {
+public class PrintSettingsUtils {
 
     private static final char ENABLED_PRINT_SERVICES_SEPARATOR = ':';
 
-    private SettingsUtils() {
+    private PrintSettingsUtils() {
         /* do nothing */
     }
 
diff --git a/src/com/android/settings/search/DynamicIndexableContentMonitor.java b/src/com/android/settings/search/DynamicIndexableContentMonitor.java
new file mode 100644
index 0000000..af7f2e9
--- /dev/null
+++ b/src/com/android/settings/search/DynamicIndexableContentMonitor.java
@@ -0,0 +1,284 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.settings.search;
+
+import android.accessibilityservice.AccessibilityService;
+import android.accessibilityservice.AccessibilityServiceInfo;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.content.pm.ResolveInfo;
+import android.content.pm.ServiceInfo;
+import android.database.ContentObserver;
+import android.hardware.input.InputManager;
+import android.net.Uri;
+import android.os.Handler;
+import android.os.Looper;
+import android.os.Message;
+import android.os.UserHandle;
+import android.print.PrintManager;
+import android.printservice.PrintService;
+import android.printservice.PrintServiceInfo;
+import android.provider.UserDictionary;
+import android.view.accessibility.AccessibilityManager;
+import android.view.inputmethod.InputMethodInfo;
+import android.view.inputmethod.InputMethodManager;
+import com.android.internal.content.PackageMonitor;
+import com.android.settings.accessibility.AccessibilitySettings;
+import com.android.settings.inputmethod.InputMethodAndLanguageSettings;
+import com.android.settings.print.PrintSettingsFragment;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public final class DynamicIndexableContentMonitor extends PackageMonitor implements
+        InputManager.InputDeviceListener {
+
+    private static final long DELAY_PROCESS_PACKAGE_CHANGE = 2000;
+
+    private static final int MSG_PACKAGE_AVAILABLE = 1;
+    private static final int MSG_PACKAGE_UNAVAILABLE = 2;
+
+    private final List<String> mAccessibilityServices = new ArrayList<String>();
+    private final List<String> mPrintServices = new ArrayList<String>();
+    private final List<String> mImeServices = new ArrayList<String>();
+
+    private final Handler mHandler = new Handler() {
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case MSG_PACKAGE_AVAILABLE: {
+                    String packageName = (String) msg.obj;
+                    handlePackageAvailable(packageName);
+                } break;
+
+                case MSG_PACKAGE_UNAVAILABLE: {
+                    String packageName = (String) msg.obj;
+                    handlePackageUnavailable(packageName);
+                } break;
+            }
+        }
+    };
+
+    private final ContentObserver mContentObserver = new MyContentObserver(mHandler);
+
+    private Context mContext;
+
+    private static Intent getAccessibilityServiceIntent(String packageName) {
+        final Intent intent = new Intent(AccessibilityService.SERVICE_INTERFACE);
+        intent.setPackage(packageName);
+        return intent;
+    }
+
+    private static Intent getPrintServiceIntent(String packageName) {
+        final Intent intent = new Intent(PrintService.SERVICE_INTERFACE);
+        intent.setPackage(packageName);
+        return intent;
+    }
+
+    private static Intent getIMEServiceIntent(String packageName) {
+        final Intent intent = new Intent("android.view.InputMethod");
+        intent.setPackage(packageName);
+        return intent;
+    }
+
+    public void register(Context context) {
+        mContext = context;
+
+        // Cache accessibility service packages to know when they go away.
+        AccessibilityManager accessibilityManager = (AccessibilityManager)
+                mContext.getSystemService(Context.ACCESSIBILITY_SERVICE);
+        List<AccessibilityServiceInfo> accessibilityServices = accessibilityManager
+                .getInstalledAccessibilityServiceList();
+        final int accessibilityServiceCount = accessibilityServices.size();
+        for (int i = 0; i < accessibilityServiceCount; i++) {
+            AccessibilityServiceInfo accessibilityService = accessibilityServices.get(i);
+            ResolveInfo resolveInfo = accessibilityService.getResolveInfo();
+            if (resolveInfo == null || resolveInfo.serviceInfo == null) {
+                continue;
+            }
+            mAccessibilityServices.add(resolveInfo.serviceInfo.packageName);
+        }
+
+        // Cache print service packages to know when they go away.
+        PrintManager printManager = (PrintManager)
+                mContext.getSystemService(Context.PRINT_SERVICE);
+        List<PrintServiceInfo> printServices = printManager.getInstalledPrintServices();
+        final int serviceCount = printServices.size();
+        for (int i = 0; i < serviceCount; i++) {
+            PrintServiceInfo printService = printServices.get(i);
+            ResolveInfo resolveInfo = printService.getResolveInfo();
+            if (resolveInfo == null || resolveInfo.serviceInfo == null) {
+                continue;
+            }
+            mPrintServices.add(resolveInfo.serviceInfo.packageName);
+        }
+
+        // Cache IME service packages to know when they go away.
+        InputMethodManager imeManager = (InputMethodManager)
+                mContext.getSystemService(Context.INPUT_METHOD_SERVICE);
+        List<InputMethodInfo> inputMethods = imeManager.getInputMethodList();
+        final int inputMethodCount = inputMethods.size();
+        for (int i = 0; i < inputMethodCount; i++) {
+            InputMethodInfo inputMethod = inputMethods.get(i);
+            ServiceInfo serviceInfo = inputMethod.getServiceInfo();
+            if (serviceInfo == null) continue;
+            mImeServices.add(serviceInfo.packageName);
+        }
+
+        // Watch for related content URIs.
+        mContext.getContentResolver().registerContentObserver(
+                UserDictionary.Words.CONTENT_URI, true, mContentObserver);
+
+        // Watch for input device changes.
+        InputManager inputManager = (InputManager) context.getSystemService(
+                Context.INPUT_SERVICE);
+        inputManager.registerInputDeviceListener(this, mHandler);
+
+        // Start tracking packages.
+        register(context, Looper.getMainLooper(), UserHandle.CURRENT, false);
+    }
+
+    public void unregister() {
+        super.unregister();
+
+        InputManager inputManager = (InputManager) mContext.getSystemService(
+                Context.INPUT_SERVICE);
+        inputManager.unregisterInputDeviceListener(this);
+
+        mContext.getContentResolver().unregisterContentObserver(mContentObserver);
+
+        mAccessibilityServices.clear();
+        mPrintServices.clear();
+        mImeServices.clear();
+    }
+
+    // Covers installed, appeared external storage with the package, upgraded.
+    @Override
+    public void onPackageAppeared(String packageName, int uid) {
+        postMessage(MSG_PACKAGE_AVAILABLE, packageName);
+    }
+
+    // Covers uninstalled, removed external storage with the package.
+    @Override
+    public void onPackageDisappeared(String packageName, int uid) {
+        postMessage(MSG_PACKAGE_UNAVAILABLE, packageName);
+    }
+
+    // Covers enabled, disabled.
+    @Override
+    public void onPackageModified(String packageName) {
+        super.onPackageModified(packageName);
+        final int state = mContext.getPackageManager().getApplicationEnabledSetting(
+                packageName);
+        if (state == PackageManager.COMPONENT_ENABLED_STATE_DEFAULT
+                || state ==  PackageManager.COMPONENT_ENABLED_STATE_ENABLED) {
+            postMessage(MSG_PACKAGE_AVAILABLE, packageName);
+        } else {
+            postMessage(MSG_PACKAGE_UNAVAILABLE, packageName);
+        }
+    }
+
+    @Override
+    public void onInputDeviceAdded(int deviceId) {
+        Index.getInstance(mContext).updateFromClassNameResource(
+                InputMethodAndLanguageSettings.class.getName(), false, true);
+    }
+
+    @Override
+    public void onInputDeviceRemoved(int deviceId) {
+        onInputDeviceChanged(deviceId);
+    }
+
+    @Override
+    public void onInputDeviceChanged(int deviceId) {
+        Index.getInstance(mContext).updateFromClassNameResource(
+                InputMethodAndLanguageSettings.class.getName(), true, true);
+    }
+
+    private void postMessage(int what, String packageName) {
+        Message message = mHandler.obtainMessage(what, packageName);
+        mHandler.sendMessageDelayed(message, DELAY_PROCESS_PACKAGE_CHANGE);
+    }
+
+    private void handlePackageAvailable(String packageName) {
+        if (!mAccessibilityServices.contains(packageName)) {
+            final Intent intent = getAccessibilityServiceIntent(packageName);
+            if (!mContext.getPackageManager().queryIntentServices(intent, 0).isEmpty()) {
+                mAccessibilityServices.add(packageName);
+                Index.getInstance(mContext).updateFromClassNameResource(
+                        AccessibilitySettings.class.getName(), false, true);
+            }
+        }
+
+        if (!mPrintServices.contains(packageName)) {
+            final Intent intent = getPrintServiceIntent(packageName);
+            if (!mContext.getPackageManager().queryIntentServices(intent, 0).isEmpty()) {
+                mPrintServices.add(packageName);
+                Index.getInstance(mContext).updateFromClassNameResource(
+                        PrintSettingsFragment.class.getName(), false, true);
+            }
+        }
+
+        if (!mImeServices.contains(packageName)) {
+            Intent intent = getIMEServiceIntent(packageName);
+            if (!mContext.getPackageManager().queryIntentServices(intent, 0).isEmpty()) {
+                mImeServices.add(packageName);
+                Index.getInstance(mContext).updateFromClassNameResource(
+                        InputMethodAndLanguageSettings.class.getName(), false, true);
+            }
+        }
+    }
+
+    private void handlePackageUnavailable(String packageName) {
+        final int accessibilityIndex = mAccessibilityServices.indexOf(packageName);
+        if (accessibilityIndex >= 0) {
+            mAccessibilityServices.remove(accessibilityIndex);
+            Index.getInstance(mContext).updateFromClassNameResource(
+                    AccessibilitySettings.class.getName(), true, true);
+        }
+
+        final int printIndex = mPrintServices.indexOf(packageName);
+        if (printIndex >= 0) {
+            mPrintServices.remove(printIndex);
+            Index.getInstance(mContext).updateFromClassNameResource(
+                    PrintSettingsFragment.class.getName(), true, true);
+        }
+
+        final int imeIndex = mImeServices.indexOf(packageName);
+        if (imeIndex >= 0) {
+            mImeServices.remove(imeIndex);
+            Index.getInstance(mContext).updateFromClassNameResource(
+                    InputMethodAndLanguageSettings.class.getName(), true, true);
+        }
+    }
+
+    private final class MyContentObserver extends ContentObserver {
+
+        public MyContentObserver(Handler handler) {
+            super(handler);
+        }
+
+        @Override
+        public void onChange(boolean selfChange, Uri uri) {
+            if (UserDictionary.Words.CONTENT_URI.equals(uri)) {
+                Index.getInstance(mContext).updateFromClassNameResource(
+                        InputMethodAndLanguageSettings.class.getName(), true, true);
+            }
+        };
+    }
+}
diff --git a/src/com/android/settings/search/Index.java b/src/com/android/settings/search/Index.java
index d5d97f5..4f5aa2c 100644
--- a/src/com/android/settings/search/Index.java
+++ b/src/com/android/settings/search/Index.java
@@ -100,6 +100,8 @@
     public static final int COLUMN_INDEX_ENABLED = 12;
     public static final int COLUMN_INDEX_KEY = 13;
 
+    public static final String ENTRIES_SEPARATOR = "|";
+
     // If you change the order of columns here, you SHOULD change the COLUMN_INDEX_XXX values
     private static final String[] SELECT_COLUMNS = new String[] {
             IndexColumns.DATA_RANK,               // 0
@@ -759,8 +761,12 @@
                             keywords, intentAction, intentTargetPackage, intentTargetClass,
                             true, key);
                 } else {
-                    final String summaryOn = getDataSummaryOn(context, attrs);
-                    final String summaryOff = getDataSummaryOff(context, attrs);
+                    String summaryOn = getDataSummaryOn(context, attrs);
+                    String summaryOff = getDataSummaryOff(context, attrs);
+
+                    if (TextUtils.isEmpty(summaryOn) && TextUtils.isEmpty(summaryOff)) {
+                        summaryOn = getDataSummary(context, attrs);
+                    }
 
                     updateOneRowWithFilteredData(database, localeStr, title, summaryOn, summaryOff,
                             null, fragmentName, screenTitle, iconResId, rank,
@@ -994,7 +1000,7 @@
         final StringBuilder result = new StringBuilder();
         for (int n = 0; n < count; n++) {
             result.append(data[n]);
-            result.append(" ");
+            result.append(ENTRIES_SEPARATOR);
         }
         return result.toString();
     }
diff --git a/src/com/android/settings/search/IndexDatabaseHelper.java b/src/com/android/settings/search/IndexDatabaseHelper.java
index afcbfa1..91f0e3f 100644
--- a/src/com/android/settings/search/IndexDatabaseHelper.java
+++ b/src/com/android/settings/search/IndexDatabaseHelper.java
@@ -28,11 +28,12 @@
     private static final String TAG = "IndexDatabaseHelper";
 
     private static final String DATABASE_NAME = "search_index.db";
-    private static final int DATABASE_VERSION = 108;
+    private static final int DATABASE_VERSION = 112;
 
     public interface Tables {
         public static final String TABLE_PREFS_INDEX = "prefs_index";
         public static final String TABLE_META_INDEX = "meta_index";
+        public static final String TABLE_SAVED_QUERIES = "saved_queries";
     }
 
     public interface IndexColumns {
@@ -61,6 +62,11 @@
         public static final String BUILD = "build";
     }
 
+    public interface SavedQueriesColums  {
+        public static final String QUERY = "query";
+        public static final String TIME_STAMP = "timestamp";
+    }
+
     private static final String CREATE_INDEX_TABLE =
             "CREATE VIRTUAL TABLE " + Tables.TABLE_PREFS_INDEX + " USING fts4" +
                     "(" +
@@ -107,6 +113,14 @@
                     MetaColumns.BUILD + " VARCHAR(32) NOT NULL" +
                     ")";
 
+    private static final String CREATE_SAVED_QUERIES_TABLE =
+            "CREATE TABLE " + Tables.TABLE_SAVED_QUERIES +
+                    "(" +
+                    SavedQueriesColums.QUERY + " VARCHAR(64) NOT NULL" +
+                    ", " +
+                    SavedQueriesColums.TIME_STAMP + " INTEGER" +
+                    ")";
+
     private static final String INSERT_BUILD_VERSION =
             "INSERT INTO " + Tables.TABLE_META_INDEX +
                     " VALUES ('" + Build.VERSION.INCREMENTAL + "');";
@@ -135,6 +149,7 @@
     private void bootstrapDB(SQLiteDatabase db) {
         db.execSQL(CREATE_INDEX_TABLE);
         db.execSQL(CREATE_META_TABLE);
+        db.execSQL(CREATE_SAVED_QUERIES_TABLE);
         db.execSQL(INSERT_BUILD_VERSION);
         Log.i(TAG, "Bootstrapped database");
     }
@@ -200,5 +215,6 @@
     private void dropTables(SQLiteDatabase db) {
         db.execSQL("DROP TABLE IF EXISTS " + Tables.TABLE_META_INDEX);
         db.execSQL("DROP TABLE IF EXISTS " + Tables.TABLE_PREFS_INDEX);
+        db.execSQL("DROP TABLE IF EXISTS " + Tables.TABLE_SAVED_QUERIES);
     }
 }
diff --git a/src/com/android/settings/search/SearchIndexableResources.java b/src/com/android/settings/search/SearchIndexableResources.java
index 6f8efce..af04b5f 100644
--- a/src/com/android/settings/search/SearchIndexableResources.java
+++ b/src/com/android/settings/search/SearchIndexableResources.java
@@ -17,27 +17,27 @@
 package com.android.settings.search;
 
 import android.provider.SearchIndexableResource;
+
 import com.android.settings.DataUsageSummary;
 import com.android.settings.DateTimeSettings;
 import com.android.settings.DevelopmentSettings;
 import com.android.settings.DeviceInfoSettings;
 import com.android.settings.DisplaySettings;
 import com.android.settings.HomeSettings;
-import com.android.settings.NotificationSettings;
 import com.android.settings.PrivacySettings;
 import com.android.settings.R;
 import com.android.settings.SecuritySettings;
 import com.android.settings.SoundSettings;
 import com.android.settings.WallpaperTypeSettings;
 import com.android.settings.WirelessSettings;
-import com.android.settings.ZenModeSettings;
 import com.android.settings.accessibility.AccessibilitySettings;
 import com.android.settings.bluetooth.BluetoothSettings;
 import com.android.settings.deviceinfo.Memory;
 import com.android.settings.fuelgauge.PowerUsageSummary;
 import com.android.settings.inputmethod.InputMethodAndLanguageSettings;
 import com.android.settings.location.LocationSettings;
-import com.android.settings.net.DataUsageMeteredSettings;
+import com.android.settings.notification.NotificationSettings;
+import com.android.settings.notification.ZenModeSettings;
 import com.android.settings.print.PrintSettingsFragment;
 import com.android.settings.users.UserSettings;
 import com.android.settings.wifi.WifiSettings;
diff --git a/src/com/android/settings/wifi/WifiEnabler.java b/src/com/android/settings/wifi/WifiEnabler.java
index 9f141ff..d289171 100644
--- a/src/com/android/settings/wifi/WifiEnabler.java
+++ b/src/com/android/settings/wifi/WifiEnabler.java
@@ -24,6 +24,8 @@
 import android.net.wifi.SupplicantState;
 import android.net.wifi.WifiInfo;
 import android.net.wifi.WifiManager;
+import android.os.Handler;
+import android.os.Message;
 import android.provider.Settings;
 import android.widget.CompoundButton;
 import android.widget.Switch;
@@ -64,6 +66,22 @@
         }
     };
 
+    private static final String EVENT_DATA_IS_WIFI_ON = "is_wifi_on";
+    private static final int EVENT_UPDATE_INDEX = 0;
+
+    private Handler mHandler = new Handler() {
+        @Override
+        public void handleMessage(Message msg) {
+            switch (msg.what) {
+                case EVENT_UPDATE_INDEX:
+                    final boolean isWiFiOn = msg.getData().getBoolean(EVENT_DATA_IS_WIFI_ON);
+                    Index.getInstance(mContext).updateFromClassNameResource(
+                            WifiSettings.class.getName(), true, isWiFiOn);
+                    break;
+            }
+        }
+    };
+
     public WifiEnabler(Context context, Switch switch_) {
         mContext = context;
         mSwitch = switch_;
@@ -154,8 +172,12 @@
     }
 
     private void updateSearchIndex(boolean isWiFiOn) {
-        Index.getInstance(mContext).updateFromClassNameResource(
-                WifiSettings.class.getName(), false, isWiFiOn);
+        mHandler.removeMessages(EVENT_UPDATE_INDEX);
+
+        Message msg = new Message();
+        msg.what = EVENT_UPDATE_INDEX;
+        msg.getData().putBoolean(EVENT_DATA_IS_WIFI_ON, isWiFiOn);
+        mHandler.sendMessage(msg);
     }
 
     private void setSwitchChecked(boolean checked) {
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index 21efc39..9a2180e 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -94,6 +94,7 @@
  */
 public class WifiSettings extends RestrictedSettingsFragment
         implements DialogInterface.OnClickListener, Indexable  {
+
     private static final String TAG = "WifiSettings";
     private static final int MENU_ID_WPS_PBC = Menu.FIRST;
     private static final int MENU_ID_WPS_PIN = Menu.FIRST + 1;
@@ -104,12 +105,14 @@
     private static final int MENU_ID_CONNECT = Menu.FIRST + 6;
     private static final int MENU_ID_FORGET = Menu.FIRST + 7;
     private static final int MENU_ID_MODIFY = Menu.FIRST + 8;
+    private static final int MENU_ID_WRITE_NFC = Menu.FIRST + 9;
 
     private static final int WIFI_DIALOG_ID = 1;
     private static final int WPS_PBC_DIALOG_ID = 2;
     private static final int WPS_PIN_DIALOG_ID = 3;
     private static final int WIFI_SKIPPED_DIALOG_ID = 4;
     private static final int WIFI_AND_MOBILE_SKIPPED_DIALOG_ID = 5;
+    private static final int WRITE_NFC_DIALOG_ID = 6;
 
     // Combo scans can take 5-6s to complete - set to 10s.
     private static final int WIFI_RESCAN_INTERVAL_MS = 10 * 1000;
@@ -141,6 +144,7 @@
     private final AtomicBoolean mConnected = new AtomicBoolean(false);
 
     private WifiDialog mDialog;
+    private WriteWifiConfigToNfcDialog mWifiToNfcDialog;
 
     private TextView mEmptyView;
 
@@ -205,13 +209,13 @@
     public void onCreate(Bundle icicle) {
         // Set this flag early, as it's needed by getHelpResource(), which is called by super
         mSetupWizardMode = getActivity().getIntent().getBooleanExtra(EXTRA_IS_FIRST_RUN, false);
-
         super.onCreate(icicle);
     }
 
     @Override
     public View onCreateView(final LayoutInflater inflater, ViewGroup container,
             Bundle savedInstanceState) {
+
         if (mSetupWizardMode) {
             View view = inflater.inflate(R.layout.setup_preference, container, false);
             View other = view.findViewById(R.id.other_network);
@@ -411,7 +415,7 @@
         if (!mSetupWizardMode) {
             final Activity activity = getActivity();
 
-            mSwitch = new Switch(activity);
+            mSwitch = new Switch(activity.getActionBar().getThemedContext());
             boolean addSwitch = true;
 
             if (activity instanceof WifiPickerActivity) {
@@ -471,6 +475,7 @@
         if (mWifiEnabler != null) {
             mWifiEnabler.pause();
         }
+
         getActivity().unregisterReceiver(mReceiver);
         mScanner.pause();
     }
@@ -599,6 +604,11 @@
                 if (mSelectedAccessPoint.networkId != INVALID_NETWORK_ID) {
                     menu.add(Menu.NONE, MENU_ID_FORGET, 0, R.string.wifi_menu_forget);
                     menu.add(Menu.NONE, MENU_ID_MODIFY, 0, R.string.wifi_menu_modify);
+
+                    if (mSelectedAccessPoint.security != AccessPoint.SECURITY_NONE) {
+                        // Only allow writing of NFC tags for password-protected networks.
+                        menu.add(Menu.NONE, MENU_ID_WRITE_NFC, 0, "Write to NFC Tag");
+                    }
                 }
             }
         }
@@ -632,6 +642,10 @@
                 showDialog(mSelectedAccessPoint, true);
                 return true;
             }
+            case MENU_ID_WRITE_NFC:
+                showDialog(WRITE_NFC_DIALOG_ID);
+                return true;
+
         }
         return super.onContextItemSelected(item);
     }
@@ -681,7 +695,7 @@
                         mAccessPointSavedState = null;
                     }
                 }
-                // If it's still null, fine, it's for Add Network
+                // If it's null, fine, it's for Add Network
                 mSelectedAccessPoint = ap;
                 mDialog = new WifiDialog(getActivity(), this, ap, mDlgEdit);
                 return mDialog;
@@ -727,6 +741,10 @@
                                 }
                             })
                             .create();
+            case WRITE_NFC_DIALOG_ID:
+                mWifiToNfcDialog =new WriteWifiConfigToNfcDialog(
+                        getActivity(), mSelectedAccessPoint, mWifiManager);
+                return mWifiToNfcDialog;
 
         }
         return super.onCreateDialog(dialogId);
@@ -991,8 +1009,7 @@
                 mRetry = 0;
                 Activity activity = getActivity();
                 if (activity != null) {
-                    Toast.makeText(activity, R.string.wifi_fail_to_scan,
-                            Toast.LENGTH_LONG).show();
+                    Toast.makeText(activity, R.string.wifi_fail_to_scan, Toast.LENGTH_LONG).show();
                 }
                 return;
             }
diff --git a/src/com/android/settings/wifi/WriteWifiConfigToNfcDialog.java b/src/com/android/settings/wifi/WriteWifiConfigToNfcDialog.java
new file mode 100644
index 0000000..7515f5c
--- /dev/null
+++ b/src/com/android/settings/wifi/WriteWifiConfigToNfcDialog.java
@@ -0,0 +1,264 @@
+package com.android.settings.wifi;
+
+import android.app.Activity;
+import android.app.AlertDialog;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.net.wifi.WifiManager;
+import android.nfc.FormatException;
+import android.nfc.NdefMessage;
+import android.nfc.NdefRecord;
+import android.nfc.NfcAdapter;
+import android.nfc.Tag;
+import android.nfc.tech.Ndef;
+import android.os.Bundle;
+import android.os.Handler;
+import android.os.PowerManager;
+import android.text.Editable;
+import android.text.InputType;
+import android.text.TextWatcher;
+import android.util.Log;
+import android.view.Gravity;
+import android.view.View;
+import android.view.inputmethod.InputMethodManager;
+import android.widget.Button;
+import android.widget.CheckBox;
+import android.widget.CompoundButton;
+import android.widget.LinearLayout;
+import android.widget.ProgressBar;
+import android.widget.TextView;
+
+import com.android.settings.R;
+
+import java.io.IOException;
+
+class WriteWifiConfigToNfcDialog extends AlertDialog
+        implements TextWatcher, View.OnClickListener, CompoundButton.OnCheckedChangeListener {
+
+    private static final String NFC_TOKEN_MIME_TYPE = "application/vnd.wfa.wsc";
+
+    private static final String TAG = WriteWifiConfigToNfcDialog.class.getName().toString();
+    private static final String PASSWORD_FORMAT = "102700%s%s";
+
+    private final PowerManager.WakeLock mWakeLock;
+
+    private AccessPoint mAccessPoint;
+    private View mView;
+    private Button mSubmitButton;
+    private Button mCancelButton;
+    private Handler mOnTextChangedHandler;
+    private TextView mPasswordView;
+    private TextView mLabelView;
+    private CheckBox mPasswordCheckBox;
+    private ProgressBar mProgressBar;
+    private WifiManager mWifiManager;
+    private String mWpsNfcConfigurationToken;
+    private Context mContext;
+
+    WriteWifiConfigToNfcDialog(Context context, AccessPoint accessPoint,
+            WifiManager wifiManager) {
+        super(context);
+        this.mContext = context;
+        this.mWakeLock = ((PowerManager) context.getSystemService(Context.POWER_SERVICE))
+                .newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "WriteWifiConfigToNfcDialog:wakeLock");
+        this.mAccessPoint = accessPoint;
+        this.mOnTextChangedHandler = new Handler();
+        this.mWifiManager = wifiManager;
+    }
+
+    @Override
+    public void onCreate(Bundle savedInstanceState) {
+        mView = getLayoutInflater().inflate(R.layout.write_wifi_config_to_nfc, null);
+
+        setView(mView);
+        setInverseBackgroundForced(true);
+        setTitle(R.string.setup_wifi_nfc_tag);
+        setCancelable(true);
+        setButton(DialogInterface.BUTTON_NEUTRAL,
+                mContext.getResources().getString(R.string.write_tag), (OnClickListener) null);
+        setButton(DialogInterface.BUTTON_NEGATIVE,
+                mContext.getResources().getString(com.android.internal.R.string.cancel),
+                (OnClickListener) null);
+
+        mPasswordView = (TextView) mView.findViewById(R.id.password);
+        mLabelView = (TextView) mView.findViewById(R.id.password_label);
+        mPasswordView.addTextChangedListener(this);
+        mPasswordCheckBox = (CheckBox) mView.findViewById(R.id.show_password);
+        mPasswordCheckBox.setOnCheckedChangeListener(this);
+        mProgressBar = (ProgressBar) mView.findViewById(R.id.progress_bar);
+
+        super.onCreate(savedInstanceState);
+
+        mSubmitButton = getButton(DialogInterface.BUTTON_NEUTRAL);
+        mSubmitButton.setOnClickListener(this);
+        mSubmitButton.setEnabled(false);
+
+        mCancelButton = getButton(DialogInterface.BUTTON_NEGATIVE);
+    }
+
+    @Override
+    public void onClick(View v) {
+        mWakeLock.acquire();
+
+        String password = mPasswordView.getText().toString();
+        String wpsNfcConfigurationToken
+                = mWifiManager.getWpsNfcConfigurationToken(mAccessPoint.networkId);
+        String passwordHex = byteArrayToHexString(password.getBytes());
+
+        String passwordLength = password.length() >= 16
+                ? "" + Character.forDigit(password.length(), 16)
+                : "0" + Character.forDigit(password.length(), 16);
+
+        passwordHex = String.format(PASSWORD_FORMAT, passwordLength, passwordHex).toUpperCase();
+
+        if (wpsNfcConfigurationToken.contains(passwordHex)) {
+            mWpsNfcConfigurationToken = wpsNfcConfigurationToken;
+
+            Activity activity = getOwnerActivity();
+            NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(activity);
+
+            nfcAdapter.enableReaderMode(activity, new NfcAdapter.ReaderCallback() {
+                @Override
+                public void onTagDiscovered(Tag tag) {
+                    handleWriteNfcEvent(tag);
+                }
+            }, NfcAdapter.FLAG_READER_NFC_A |
+                    NfcAdapter.FLAG_READER_NFC_B |
+                    NfcAdapter.FLAG_READER_NFC_BARCODE |
+                    NfcAdapter.FLAG_READER_NFC_F |
+                    NfcAdapter.FLAG_READER_NFC_V,
+                    null);
+
+            mPasswordView.setVisibility(View.GONE);
+            mPasswordCheckBox.setVisibility(View.GONE);
+            mSubmitButton.setVisibility(View.GONE);
+            InputMethodManager imm = (InputMethodManager)
+                    getOwnerActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
+            imm.hideSoftInputFromWindow(mPasswordView.getWindowToken(), 0);
+
+            mLabelView.setText(R.string.status_awaiting_tap);
+
+            mView.findViewById(R.id.password_layout).setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
+            mProgressBar.setVisibility(View.VISIBLE);
+        } else {
+            mLabelView.setText(R.string.status_invalid_password);
+        }
+    }
+
+    private void handleWriteNfcEvent(Tag tag) {
+        Ndef ndef = Ndef.get(tag);
+
+        if (ndef != null) {
+            if (ndef.isWritable()) {
+                NdefRecord record = NdefRecord.createMime(
+                        NFC_TOKEN_MIME_TYPE,
+                        hexStringToByteArray(mWpsNfcConfigurationToken));
+                try {
+                    ndef.connect();
+                    ndef.writeNdefMessage(new NdefMessage(record));
+                    getOwnerActivity().runOnUiThread(new Runnable() {
+                        @Override
+                        public void run() {
+                            mProgressBar.setVisibility(View.GONE);
+                        }
+                    });
+                    setViewText(mLabelView, R.string.status_write_success);
+                    setViewText(mCancelButton, com.android.internal.R.string.done_label);
+                } catch (IOException e) {
+                    setViewText(mLabelView, R.string.status_failed_to_write);
+                    Log.e(TAG, "Unable to write WiFi config to NFC tag.", e);
+                    return;
+                } catch (FormatException e) {
+                    setViewText(mLabelView, R.string.status_failed_to_write);
+                    Log.e(TAG, "Unable to write WiFi config to NFC tag.", e);
+                    return;
+                }
+            } else {
+                setViewText(mLabelView, R.string.status_tag_not_writable);
+                Log.e(TAG, "Tag is not writable");
+            }
+        } else {
+            setViewText(mLabelView, R.string.status_tag_not_writable);
+            Log.e(TAG, "Tag does not support NDEF");
+        }
+    }
+
+    @Override
+    public void dismiss() {
+        if (mWakeLock.isHeld()) {
+            mWakeLock.release();
+        }
+
+        super.dismiss();
+    }
+
+    @Override
+    public void onTextChanged(CharSequence s, int start, int before, int count) {
+        mOnTextChangedHandler.post(new Runnable() {
+            @Override
+            public void run() {
+                enableSubmitIfAppropriate();
+            }
+        });
+    }
+
+    private void enableSubmitIfAppropriate() {
+
+        if (mPasswordView != null) {
+            if (mAccessPoint.security == AccessPoint.SECURITY_WEP) {
+                mSubmitButton.setEnabled(mPasswordView.length() > 0);
+            } else if (mAccessPoint.security == AccessPoint.SECURITY_PSK) {
+                mSubmitButton.setEnabled(mPasswordView.length() >= 8);
+            }
+        } else {
+            mSubmitButton.setEnabled(false);
+        }
+
+    }
+
+    private void setViewText(final TextView view, final int resid) {
+        getOwnerActivity().runOnUiThread(new Runnable() {
+            @Override
+            public void run() {
+                view.setText(resid);
+            }
+        });
+    }
+
+    @Override
+    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
+        mPasswordView.setInputType(
+                InputType.TYPE_CLASS_TEXT |
+                (isChecked
+                        ? InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
+                        : InputType.TYPE_TEXT_VARIATION_PASSWORD));
+    }
+
+    private static byte[] hexStringToByteArray(String s) {
+        int len = s.length();
+        byte[] data = new byte[len / 2];
+
+        for (int i = 0; i < len; i += 2) {
+            data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+                    + Character.digit(s.charAt(i + 1), 16));
+        }
+
+        return data;
+    }
+
+    final protected static char[] hexArray = "0123456789ABCDEF".toCharArray();
+    private static String byteArrayToHexString(byte[] bytes) {
+        char[] hexChars = new char[bytes.length * 2];
+        for ( int j = 0; j < bytes.length; j++ ) {
+            int v = bytes[j] & 0xFF;
+            hexChars[j * 2] = hexArray[v >>> 4];
+            hexChars[j * 2 + 1] = hexArray[v & 0x0F];
+        }
+        return new String(hexChars);
+    }
+
+    @Override
+    public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
+    @Override
+    public void afterTextChanged(Editable s) {}
+}